diff --git a/src/wasm-lib/kcl/src/parsing/parser.rs b/src/wasm-lib/kcl/src/parsing/parser.rs index 8a4318d449..0fcd9e2715 100644 --- a/src/wasm-lib/kcl/src/parsing/parser.rs +++ b/src/wasm-lib/kcl/src/parsing/parser.rs @@ -4663,7 +4663,7 @@ my14 = 4 ^ 2 - 3 ^ 2 * 2 kw_function_decl_with_default_and_type, r#"fn foo(x?: number = 2) { return 1 }"# ); - snapshot_test!(kw_function_to_draw_square, r#"val = 1 |> f(arg = x)"#); + snapshot_test!(kw_function_call_in_pipe, r#"val = 1 |> f(arg = x)"#); } #[allow(unused)] diff --git a/src/wasm-lib/kcl/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__au.snap b/src/wasm-lib/kcl/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__au.snap index c3c6b14059..7cf93d24a7 100644 --- a/src/wasm-lib/kcl/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__au.snap +++ b/src/wasm-lib/kcl/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__au.snap @@ -1,12 +1,13 @@ --- source: kcl/src/parsing/parser.rs expression: actual +snapshot_kind: text --- { "body": [ { "declaration": { - "end": 107, + "end": 113, "id": { "end": 14, "name": "cylinder", @@ -122,18 +123,19 @@ expression: actual { "arguments": [ { - "end": 103, - "raw": "14", - "start": 101, - "type": "Literal", - "type": "Literal", - "value": 14.0 - }, - { - "end": 106, - "start": 105, - "type": "PipeSubstitution", - "type": "PipeSubstitution" + "type": "LabeledArg", + "label": { + "type": "Identifier", + "name": "length" + }, + "arg": { + "end": 112, + "raw": "14", + "start": 110, + "type": "Literal", + "type": "Literal", + "value": 14.0 + } } ], "callee": { @@ -142,13 +144,14 @@ expression: actual "start": 93, "type": "Identifier" }, - "end": 107, + "end": 113, "start": 93, - "type": "CallExpression", - "type": "CallExpression" + "type": "CallExpressionKw", + "type": "CallExpressionKw", + "unlabeled": null } ], - "end": 107, + "end": 113, "start": 17, "type": "PipeExpression", "type": "PipeExpression" @@ -156,13 +159,13 @@ expression: actual "start": 6, "type": "VariableDeclarator" }, - "end": 107, + "end": 113, "kind": "const", "start": 0, "type": "VariableDeclaration", "type": "VariableDeclaration" } ], - "end": 108, + "end": 114, "start": 0 } diff --git a/src/wasm-lib/kcl/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__kw_function_call_in_pipe.snap b/src/wasm-lib/kcl/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__kw_function_call_in_pipe.snap new file mode 100644 index 0000000000..3e50d95dd5 --- /dev/null +++ b/src/wasm-lib/kcl/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__kw_function_call_in_pipe.snap @@ -0,0 +1,74 @@ +--- +source: kcl/src/parsing/parser.rs +expression: actual +snapshot_kind: text +--- +{ + "body": [ + { + "declaration": { + "end": 21, + "id": { + "end": 3, + "name": "val", + "start": 0, + "type": "Identifier" + }, + "init": { + "body": [ + { + "end": 7, + "raw": "1", + "start": 6, + "type": "Literal", + "type": "Literal", + "value": 1.0 + }, + { + "arguments": [ + { + "type": "LabeledArg", + "label": { + "type": "Identifier", + "name": "arg" + }, + "arg": { + "end": 20, + "name": "x", + "start": 19, + "type": "Identifier", + "type": "Identifier" + } + } + ], + "callee": { + "end": 12, + "name": "f", + "start": 11, + "type": "Identifier" + }, + "end": 21, + "start": 11, + "type": "CallExpressionKw", + "type": "CallExpressionKw", + "unlabeled": null + } + ], + "end": 21, + "start": 6, + "type": "PipeExpression", + "type": "PipeExpression" + }, + "start": 0, + "type": "VariableDeclarator" + }, + "end": 21, + "kind": "const", + "start": 0, + "type": "VariableDeclaration", + "type": "VariableDeclaration" + } + ], + "end": 21, + "start": 0 +} diff --git a/src/wasm-lib/tests/executor/inputs/angled_line.kcl b/src/wasm-lib/tests/executor/inputs/angled_line.kcl index 94fb2b8593..fd73ae4dbd 100644 --- a/src/wasm-lib/tests/executor/inputs/angled_line.kcl +++ b/src/wasm-lib/tests/executor/inputs/angled_line.kcl @@ -1,9 +1,9 @@ const part001 = startSketchOn('XY') |> startProfileAt([4.83, 12.56], %) - |> line([15.1, 2.48], %) - |> line([3.15, -9.85], %, $seg01) - |> line([-15.17, -4.1], %) + |> line(to = [15.1, 2.48]) + |> line(to = [3.15, -9.85], tag = $seg01) + |> line(to = [-15.17, -4.1]) |> angledLine([segAng(seg01), 12.35], %) - |> line([-13.02, 10.03], %) - |> close(%) - |> extrude(4, %) + |> line(to = [-13.02, 10.03]) + |> close() + |> extrude(length = 4) diff --git a/src/wasm-lib/tests/executor/inputs/basic_fillet_cube_close_opposite.kcl b/src/wasm-lib/tests/executor/inputs/basic_fillet_cube_close_opposite.kcl index 1be9f443ce..4c5a059f7f 100644 --- a/src/wasm-lib/tests/executor/inputs/basic_fillet_cube_close_opposite.kcl +++ b/src/wasm-lib/tests/executor/inputs/basic_fillet_cube_close_opposite.kcl @@ -1,8 +1,8 @@ const part001 = startSketchOn('XY') |> startProfileAt([0,0], %) - |> line([0, 10], %, $thing) - |> line([10, 0], %) - |> line([0, -10], %, $thing2) - |> close(%, $thing3) - |> extrude(10, %) + |> line(to = [0, 10], tag = $thing) + |> line(to = [10, 0]) + |> line(to = [0, -10], tag = $thing2) + |> close(tag = $thing3) + |> extrude(length = 10) |> fillet({radius: 2, tags: [thing3, getOppositeEdge(thing3)]}, %) diff --git a/src/wasm-lib/tests/executor/inputs/basic_fillet_cube_end.kcl b/src/wasm-lib/tests/executor/inputs/basic_fillet_cube_end.kcl index 98d87cedab..a849820d55 100644 --- a/src/wasm-lib/tests/executor/inputs/basic_fillet_cube_end.kcl +++ b/src/wasm-lib/tests/executor/inputs/basic_fillet_cube_end.kcl @@ -1,8 +1,8 @@ const part001 = startSketchOn('XY') |> startProfileAt([0,0], %) - |> line([0, 10], %, $thing) - |> line([10, 0], %) - |> line([0, -10], %, $thing2) - |> close(%) - |> extrude(10, %) + |> line(to = [0, 10], tag = $thing) + |> line(to = [10, 0]) + |> line(to = [0, -10], tag = $thing2) + |> close() + |> extrude(length = 10) |> fillet({radius: 2, tags: [thing, getOppositeEdge(thing)]}, %) diff --git a/src/wasm-lib/tests/executor/inputs/basic_fillet_cube_next_adjacent.kcl b/src/wasm-lib/tests/executor/inputs/basic_fillet_cube_next_adjacent.kcl index db8903535a..a1fed21693 100644 --- a/src/wasm-lib/tests/executor/inputs/basic_fillet_cube_next_adjacent.kcl +++ b/src/wasm-lib/tests/executor/inputs/basic_fillet_cube_next_adjacent.kcl @@ -1,8 +1,8 @@ const part001 = startSketchOn('XY') |> startProfileAt([0,0], %) - |> line([0, 10], %, $thing) - |> line([10, 0], %, $thing1) - |> line([0, -10], %, $thing2) - |> close(%, $thing3) - |> extrude(10, %) + |> line(to = [0, 10], tag = $thing) + |> line(to = [10, 0], tag = $thing1) + |> line(to = [0, -10], tag = $thing2) + |> close(tag = $thing3) + |> extrude(length = 10) |> fillet({radius: 2, tags: [getNextAdjacentEdge(thing3)]}, %) diff --git a/src/wasm-lib/tests/executor/inputs/basic_fillet_cube_previous_adjacent.kcl b/src/wasm-lib/tests/executor/inputs/basic_fillet_cube_previous_adjacent.kcl index 0c46d711b1..bf58207cd5 100644 --- a/src/wasm-lib/tests/executor/inputs/basic_fillet_cube_previous_adjacent.kcl +++ b/src/wasm-lib/tests/executor/inputs/basic_fillet_cube_previous_adjacent.kcl @@ -1,8 +1,8 @@ const part001 = startSketchOn('XY') |> startProfileAt([0,0], %) - |> line([0, 10], %, $thing) - |> line([10, 0], %, $thing1) - |> line([0, -10], %, $thing2) - |> close(%, $thing3) - |> extrude(10, %) + |> line(to = [0, 10], tag = $thing) + |> line(to = [10, 0], tag = $thing1) + |> line(to = [0, -10], tag = $thing2) + |> close(tag = $thing3) + |> extrude(length = 10) |> fillet({radius: 2, tags: [getPreviousAdjacentEdge(thing3)]}, %) diff --git a/src/wasm-lib/tests/executor/inputs/basic_fillet_cube_start.kcl b/src/wasm-lib/tests/executor/inputs/basic_fillet_cube_start.kcl index 7d08a6edef..2c39b29b63 100644 --- a/src/wasm-lib/tests/executor/inputs/basic_fillet_cube_start.kcl +++ b/src/wasm-lib/tests/executor/inputs/basic_fillet_cube_start.kcl @@ -1,9 +1,9 @@ const part001 = startSketchOn('XY') |> startProfileAt([0,0], %) - |> line([0, 10], %, $thing) - |> line([10, 0], %) - |> line([0, -10], %, $thing2) - |> close(%) - |> extrude(10, %) + |> line(to = [0, 10], tag = $thing) + |> line(to = [10, 0]) + |> line(to = [0, -10], tag = $thing2) + |> close() + |> extrude(length = 10) |> fillet({radius: 2, tags: [thing, thing2]}, %) diff --git a/src/wasm-lib/tests/executor/inputs/big_number_angle_to_match_length_x.kcl b/src/wasm-lib/tests/executor/inputs/big_number_angle_to_match_length_x.kcl index 4ee23e3347..79c530e2bd 100644 --- a/src/wasm-lib/tests/executor/inputs/big_number_angle_to_match_length_x.kcl +++ b/src/wasm-lib/tests/executor/inputs/big_number_angle_to_match_length_x.kcl @@ -1,9 +1,9 @@ const part001 = startSketchOn('XY') |> startProfileAt([0, 0], %) - |> line([1, 3.82], %, $seg01) + |> line(to = [1, 3.82], tag = $seg01) |> angledLineToX([ -angleToMatchLengthX(seg01, 3, %), 3 ], %) - |> close(%) - |> extrude(10, %) + |> close() + |> extrude(length = 10) diff --git a/src/wasm-lib/tests/executor/inputs/big_number_angle_to_match_length_y.kcl b/src/wasm-lib/tests/executor/inputs/big_number_angle_to_match_length_y.kcl index a1d083e649..3474ab801c 100644 --- a/src/wasm-lib/tests/executor/inputs/big_number_angle_to_match_length_y.kcl +++ b/src/wasm-lib/tests/executor/inputs/big_number_angle_to_match_length_y.kcl @@ -1,9 +1,9 @@ const part001 = startSketchOn('XY') |> startProfileAt([0, 0], %) - |> line([1, 3.82], %, $seg01) + |> line(to = [1, 3.82], tag = $seg01) |> angledLineToX([ -angleToMatchLengthY(seg01, 3, %), 3 ], %) - |> close(%) - |> extrude(10, %) + |> close() + |> extrude(length = 10) diff --git a/src/wasm-lib/tests/executor/inputs/broken-code-test.kcl b/src/wasm-lib/tests/executor/inputs/broken-code-test.kcl index efa7f686de..6b028205f6 100644 --- a/src/wasm-lib/tests/executor/inputs/broken-code-test.kcl +++ b/src/wasm-lib/tests/executor/inputs/broken-code-test.kcl @@ -38,13 +38,13 @@ const filletR = 0.25 // Sketch the bracket and extrude with fillets const bracket = startSketchOn('XY') |> startProfileAt([0, 0], %) - |> line([0, wallMountL], %, 'outerEdge') - |> line([-shelfMountL, 0], %) - |> line([0, -thickness], %) - |> line([shelfMountL - thickness, 0], %, 'innerEdge') - |> line([0, -wallMountL + thickness], %) - |> close(%) - |> extrude(width, %) + |> line(to = [0, wallMountL], tag = 'outerEdge') + |> line(to = [-shelfMountL, 0]) + |> line(to = [0, -thickness]) + |> line(to = [shelfMountL - thickness, 0], tag = 'innerEdge') + |> line(to = [0, -wallMountL + thickness]) + |> close() + |> extrude(length = width) |> fillet({ radius: filletR, tags: [ diff --git a/src/wasm-lib/tests/executor/inputs/circular_pattern3d_a_pattern.kcl b/src/wasm-lib/tests/executor/inputs/circular_pattern3d_a_pattern.kcl index 41faf30399..cffa30805d 100644 --- a/src/wasm-lib/tests/executor/inputs/circular_pattern3d_a_pattern.kcl +++ b/src/wasm-lib/tests/executor/inputs/circular_pattern3d_a_pattern.kcl @@ -1,10 +1,10 @@ exampleSketch = startSketchOn('XZ') |> startProfileAt([0, 0], %) - |> line([0, 2], %) - |> line([3, 1], %) - |> line([0, -4], %) - |> close(%) - |> extrude(1, %) + |> line(to = [0, 2]) + |> line(to = [3, 1]) + |> line(to = [0, -4]) + |> close() + |> extrude(length = 1) pattn1 = patternLinear3d({ axis: [1, 0, 0], diff --git a/src/wasm-lib/tests/executor/inputs/close_arc.kcl b/src/wasm-lib/tests/executor/inputs/close_arc.kcl index ecd867c07f..0484033160 100644 --- a/src/wasm-lib/tests/executor/inputs/close_arc.kcl +++ b/src/wasm-lib/tests/executor/inputs/close_arc.kcl @@ -5,5 +5,5 @@ const height = 3 const body = startSketchOn('XY') |> startProfileAt([center[0]+radius, center[1]], %) |> arc({angle_end: 360, angle_start: 0, radius: radius}, %) - |> close(%) - |> extrude(height, %) + |> close() + |> extrude(length = height) diff --git a/src/wasm-lib/tests/executor/inputs/cube.kcl b/src/wasm-lib/tests/executor/inputs/cube.kcl index 943054a6c5..ccf3cdc0b2 100644 --- a/src/wasm-lib/tests/executor/inputs/cube.kcl +++ b/src/wasm-lib/tests/executor/inputs/cube.kcl @@ -8,12 +8,12 @@ fn cube(length, center) { p3 = [ l + x, -l + y] return startSketchAt(p0) - |> lineTo(p1, %) - |> lineTo(p2, %) - |> lineTo(p3, %) - |> lineTo(p0, %) - |> close(%) - |> extrude(length, %) + |> line(end = p1) + |> line(end = p2) + |> line(end = p3) + |> line(end = p0) + |> close() + |> extrude(length = length) } myCube = cube(40, [0,0]) diff --git a/src/wasm-lib/tests/executor/inputs/cylinder.kcl b/src/wasm-lib/tests/executor/inputs/cylinder.kcl index f3800be1c7..c299946198 100644 --- a/src/wasm-lib/tests/executor/inputs/cylinder.kcl +++ b/src/wasm-lib/tests/executor/inputs/cylinder.kcl @@ -1,3 +1,3 @@ const cylinder = startSketchOn('XY') |> circle({ center: [0, 0], radius: 22 }, %) - |> extrude(14, %) + |> extrude(length = 14) diff --git a/src/wasm-lib/tests/executor/inputs/dimensions_match.kcl b/src/wasm-lib/tests/executor/inputs/dimensions_match.kcl index 4c1f3a9a65..5044a98853 100644 --- a/src/wasm-lib/tests/executor/inputs/dimensions_match.kcl +++ b/src/wasm-lib/tests/executor/inputs/dimensions_match.kcl @@ -1,7 +1,7 @@ const part001 = startSketchOn('XY') |> startProfileAt([-10, -10], %) - |> line([20, 0], %) - |> line([0, 20], %) - |> line([-20, 0], %) - |> close(%) - |> extrude(10, %) + |> line(to = [20, 0]) + |> line(to = [0, 20]) + |> line(to = [-20, 0]) + |> close() + |> extrude(length = 10) diff --git a/src/wasm-lib/tests/executor/inputs/e2e-can-sketch-on-chamfer-no-pipeExpr.kcl b/src/wasm-lib/tests/executor/inputs/e2e-can-sketch-on-chamfer-no-pipeExpr.kcl index e943b6b491..7430b8e9b0 100644 --- a/src/wasm-lib/tests/executor/inputs/e2e-can-sketch-on-chamfer-no-pipeExpr.kcl +++ b/src/wasm-lib/tests/executor/inputs/e2e-can-sketch-on-chamfer-no-pipeExpr.kcl @@ -1,6 +1,6 @@ const sketch001 = startSketchOn('XZ') |> startProfileAt([75.8, 317.2], %) - |> angledLine([0, 268.43], %, $rectangleSegmentA001) + |> angledline(to = [0, 268.43], tag = $rectangleSegmentA001) |> angledLine([ segAng(rectangleSegmentA001) - 90, 217.26 @@ -9,9 +9,9 @@ const sketch001 = startSketchOn('XZ') segAng(rectangleSegmentA001), -segLen(rectangleSegmentA001) ], %, $yo) - |> lineTo([profileStartX(%), profileStartY(%)], %, $seg02) - |> close(%) -const extrude001 = extrude(100, sketch001) + |> line(end = [profileStartX(%), profileStartY(%)]) + |> close() +const extrude001 = extrude(sketch001, length = 100) const chamf = chamfer({ length: 30, tags: [ diff --git a/src/wasm-lib/tests/executor/inputs/e2e-can-sketch-on-chamfer.kcl b/src/wasm-lib/tests/executor/inputs/e2e-can-sketch-on-chamfer.kcl index bc8769267f..3905a25a30 100644 --- a/src/wasm-lib/tests/executor/inputs/e2e-can-sketch-on-chamfer.kcl +++ b/src/wasm-lib/tests/executor/inputs/e2e-can-sketch-on-chamfer.kcl @@ -1,6 +1,6 @@ const sketch001 = startSketchOn('XZ') |> startProfileAt([75.8, 317.2], %) // [$startCapTag, $EndCapTag] - |> angledLine([0, 268.43], %, $rectangleSegmentA001) + |> angledline(to = [0, 268.43], tag = $rectangleSegmentA001) |> angledLine([ segAng(rectangleSegmentA001) - 90, 217.26 @@ -9,9 +9,9 @@ const sketch001 = startSketchOn('XZ') segAng(rectangleSegmentA001), -segLen(rectangleSegmentA001) ], %, $yo) - |> lineTo([profileStartX(%), profileStartY(%)], %, $seg02) - |> close(%) -const extrude001 = extrude(100, sketch001) + |> line(end = [profileStartX(%), profileStartY(%)]) + |> close() +const extrude001 = extrude(sketch001, length = 100) |> chamfer({ length = 30, tags = [ diff --git a/src/wasm-lib/tests/executor/inputs/extrude-custom-plane.kcl b/src/wasm-lib/tests/executor/inputs/extrude-custom-plane.kcl index c5443205b4..85bf0c87db 100644 --- a/src/wasm-lib/tests/executor/inputs/extrude-custom-plane.kcl +++ b/src/wasm-lib/tests/executor/inputs/extrude-custom-plane.kcl @@ -1,12 +1,12 @@ // create a sketch with name sketch000 const sketch000 = startSketchOn('XY') |> startProfileAt([0.0, 0.0], %) - |> line([1.0, 1.0], %, $line000) - |> line([0.0, -1.0], %, $line001) - |> line([-1.0, 0.0], %, $line002) + |> line(to = [1.0, 1.0], tag = $line000) + |> line(to = [0.0, -1.0], tag = $line001) + |> line(to = [-1.0, 0.0], tag = $line002) // create an extrusion with name extrude000 -const extrude000 = extrude(1.0, sketch000) +const extrude000 = extrude(sketch000, length = 1.0) // define a plane with name plane005 const plane005 = { @@ -21,9 +21,9 @@ const plane005 = { // create a sketch with name sketch001 const sketch001 = startSketchOn(plane005) |> startProfileAt([0.100000, 0.250000], %) - |> line([0.075545, 0.494260], %, $line003) - |> line([0.741390, -0.113317], %, $line004) - |> line([-0.816935, -0.380943], %, $line005) + |> line(to = [0.075545, 0.494260], tag = $line003) + |> line(to = [0.741390, -0.113317], tag = $line004) + |> line(to = [-0.816935, -0.380943], tag = $line005) // create an extrusion with name extrude001 -const extrude001 = extrude(1.0, sketch001) +const extrude001 = extrude(sketch001, length = 1.0) diff --git a/src/wasm-lib/tests/executor/inputs/extrude-inside-fn-with-tags.kcl b/src/wasm-lib/tests/executor/inputs/extrude-inside-fn-with-tags.kcl index 0466ea7e24..d50564c1ae 100644 --- a/src/wasm-lib/tests/executor/inputs/extrude-inside-fn-with-tags.kcl +++ b/src/wasm-lib/tests/executor/inputs/extrude-inside-fn-with-tags.kcl @@ -17,10 +17,10 @@ const tabThk = 4 fn rectShape = (pos, w, l) => { const rr = startSketchOn('xy') |> startProfileAt([pos[0] - (w / 2), pos[1] - (l / 2)], %) - |> lineTo([pos[0] + w / 2, pos[1] - (l / 2)], %, $edge01) - |> lineTo([pos[0] + w / 2, pos[1] + l / 2], %, $edge02) - |> lineTo([pos[0] - (w / 2), pos[1] + l / 2], %, $edge03) - |> close(%, $edge04) + |> line(end = [pos[0] + w / 2, pos[1] - (l / 2)]) + |> line(end = [pos[0] + w / 2, pos[1] + l / 2]) + |> line(end = [pos[0] - (w / 2), pos[1] + l / 2]) + |> close(tag = $edge04) return rr } @@ -38,15 +38,15 @@ const bracketPlane = { fn bracketSketch = (w, d, t) => { const s = startSketchOn(bracketPlane) |> startProfileAt([-w / 2 - t, d + t], %) - |> lineTo([-w / 2 - t, -t], %, $edge1) - |> lineTo([w / 2 + t, -t], %, $edge2) - |> lineTo([w / 2 + t, d + t], %, $edge3) - |> lineTo([w / 2, d + t], %, $edge4) - |> lineTo([w / 2, 0], %, $edge5) - |> lineTo([-w / 2, 0], %, $edge6) - |> lineTo([-w / 2, d + t], %, $edge7) - |> close(%, $edge8) - |> extrude(length + 2 * thk, %) + |> line(end = [-w / 2 - t, -t], tag = $edge1) + |> line(end = [w / 2 + t, -t], tag = $edge2) + |> line(end = [w / 2 + t, d + t], tag = $edge3) + |> line(end = [w / 2, d + t], tag = $edge4) + |> line(end = [w / 2, 0], tag = $edge5) + |> line(end = [-w / 2, 0], tag = $edge6) + |> line(end = [-w / 2, d + t], tag = $edge7) + |> close(tag = $edge8) + |> extrude(length = length + 2 * thk) return s } @@ -67,8 +67,8 @@ const bracketBody = bs // sketch on the face const retBack = startSketchOn(bs, bs.sketch.tags.edge4) |> startProfileAt([length / 2 + thk, 0], %) - |> line([0, thk], %) - |> line([-thk, 0], %) - |> line([0, -thk], %) - |> close(%) - |> extrude(width - 40, %) + |> line(to = [0, thk]) + |> line(to = [-thk, 0]) + |> line(to = [0, -thk]) + |> close() + |> extrude(length = width - 40) diff --git a/src/wasm-lib/tests/executor/inputs/fillet-and-shell.kcl b/src/wasm-lib/tests/executor/inputs/fillet-and-shell.kcl index 295f959b09..73aa62afee 100644 --- a/src/wasm-lib/tests/executor/inputs/fillet-and-shell.kcl +++ b/src/wasm-lib/tests/executor/inputs/fillet-and-shell.kcl @@ -38,15 +38,15 @@ const miniHdmiHole = startSketchAt([ 1, border + miniHdmiDistance - (miniHdmiWidth / 2) ], %) - |> close(%) + |> close() const case = startSketchOn('XY') |> startProfileAt([0, 0], %) - |> lineTo([caseWidth, 0], %, $edge1) - |> lineTo([caseWidth, caseLength], %, $edge2) - |> lineTo([0, caseLength], %, $edge3) - |> close(%, $edge4) - |> extrude(caseHeight, %) + |> line(end = [caseWidth, 0]) + |> line(end = [caseWidth, caseLength]) + |> line(end = [0, caseLength]) + |> close(tag = $edge4) + |> extrude(length = caseHeight) |> fillet({ radius: 1, tags: [ @@ -63,7 +63,7 @@ fn m25Screw = (x, y, height) => { |> startProfileAt([0, 0], %) |> circle({ center: [x, y], radius: 2.5 }, %) |> hole(circle({ center: [x, y], radius: 1.25 }, %), %) - |> extrude(height, %) + |> extrude(length = height) return screw } diff --git a/src/wasm-lib/tests/executor/inputs/fillet_duplicate_tags.kcl b/src/wasm-lib/tests/executor/inputs/fillet_duplicate_tags.kcl index d8a5e75f67..a25446340a 100644 --- a/src/wasm-lib/tests/executor/inputs/fillet_duplicate_tags.kcl +++ b/src/wasm-lib/tests/executor/inputs/fillet_duplicate_tags.kcl @@ -1,8 +1,8 @@ const part001 = startSketchOn('XY') |> startProfileAt([0,0], %) - |> line([0, 10], %, $thing) - |> line([10, 0], %) - |> line([0, -10], %, $thing2) - |> close(%) - |> extrude(10, %) + |> line(to = [0, 10], tag = $thing) + |> line(to = [10, 0]) + |> line(to = [0, -10], tag = $thing2) + |> close() + |> extrude(length = 10) |> fillet({radius: 0.5, tags: [thing, thing]}, %) diff --git a/src/wasm-lib/tests/executor/inputs/focusrite_scarlett_mounting_braket.kcl b/src/wasm-lib/tests/executor/inputs/focusrite_scarlett_mounting_braket.kcl index 14659f62df..f958ebf5b3 100644 --- a/src/wasm-lib/tests/executor/inputs/focusrite_scarlett_mounting_braket.kcl +++ b/src/wasm-lib/tests/executor/inputs/focusrite_scarlett_mounting_braket.kcl @@ -17,10 +17,10 @@ const tabThk = 4 fn rectShape = (pos, w, l) => { const rr = startSketchOn('xy') |> startProfileAt([pos[0] - (w / 2), pos[1] - (l / 2)], %) - |> lineTo([pos[0] + w / 2, pos[1] - (l / 2)], %, $edge01) - |> lineTo([pos[0] + w / 2, pos[1] + l / 2], %, $edge02) - |> lineTo([pos[0] - (w / 2), pos[1] + l / 2], %, $edge03) - |> close(%, $edge04) + |> line(end = [pos[0] + w / 2, pos[1] - (l / 2)]) + |> line(end = [pos[0] + w / 2, pos[1] + l / 2]) + |> line(end = [pos[0] - (w / 2), pos[1] + l / 2]) + |> close(tag = $edge04) return rr } @@ -38,21 +38,21 @@ const bracketPlane = { fn bracketSketch = (w, d, t) => { const s = startSketchOn(bracketPlane) |> startProfileAt([-w / 2 - t, d + t], %) - |> lineTo([-w / 2 - t, -t], %, $edge1) - |> lineTo([w / 2 + t, -t], %, $edge2) - |> lineTo([w / 2 + t, d + t], %, $edge3) - |> lineTo([w / 2, d + t], %, $edge4) - |> lineTo([w / 2, 0], %, $edge5) - |> lineTo([-w / 2, 0], %, $edge6) - |> lineTo([-w / 2, d + t], %, $edge7) - |> close(%, $edge8) + |> line(end = [-w / 2 - t, -t]) + |> line(end = [w / 2 + t, -t]) + |> line(end = [w / 2 + t, d + t]) + |> line(end = [w / 2, d + t]) + |> line(end = [w / 2, 0]) + |> line(end = [-w / 2, 0]) + |> line(end = [-w / 2, d + t]) + |> close(tag = $edge8) return s } // build the body of the bracket const bs = bracketSketch(width, depth, thk) const bracketBody = bs - |> extrude(length + 2 * thk, %) + |> extrude(length = length + 2 * thk) |> fillet({ radius: radius, tags: [ @@ -76,10 +76,10 @@ const tabPlane = { // build the tabs of the mounting bracket (right side) const tabsR = startSketchOn(tabPlane) |> startProfileAt([width / 2 + thk, length / 2 + thk], %) - |> line([tabWidth, -tabLength / 3], %, $edge11) - |> line([0, -tabLength / 3 * 2], %, $edge12) - |> line([-tabWidth, -tabLength / 3], %, $edge13) - |> close(%, $edge14) + |> line(to = [tabWidth, -tabLength / 3], tag = $edge11) + |> line(to = [0, -tabLength / 3 * 2], tag = $edge12) + |> line(to = [-tabWidth, -tabLength / 3], tag = $edge13) + |> close(tag = $edge14) |> hole(circle({ center: [ width / 2 + thk + tabWidth / 2, @@ -87,7 +87,7 @@ const tabsR = startSketchOn(tabPlane) ], radius: holeDiam / 2 }, %), %) - |> extrude(-tabThk, %) + |> extrude(length = -tabThk) |> fillet({ radius: holeDiam / 2, tags: [ @@ -104,10 +104,10 @@ const tabsR = startSketchOn(tabPlane) // build the tabs of the mounting bracket (left side) const tabsL = startSketchOn(tabPlane) |> startProfileAt([-width / 2 - thk, length / 2 + thk], %) - |> line([-tabWidth, -tabLength / 3], %, $edge21) - |> line([0, -tabLength / 3 * 2], %, $edge22) - |> line([tabWidth, -tabLength / 3], %, $edge23) - |> close(%, $edge24) + |> line(to = [-tabWidth, -tabLength / 3], tag = $edge21) + |> line(to = [0, -tabLength / 3 * 2], tag = $edge22) + |> line(to = [tabWidth, -tabLength / 3], tag = $edge23) + |> close(tag = $edge24) |> hole(circle({ center: [ -width / 2 - thk - (tabWidth / 2), @@ -115,7 +115,7 @@ const tabsL = startSketchOn(tabPlane) ], radius: holeDiam / 2 }, %), %) - |> extrude(-tabThk, %) + |> extrude(length = -tabThk) |> fillet({ radius: holeDiam / 2, tags: [ @@ -142,16 +142,16 @@ const retPlane = { // build the retention bump in the front const retFront = startSketchOn(retPlane) |> startProfileAt([-length / 2 - thk, 0], %) - |> line([0, thk], %) - |> line([thk, -thk], %) - |> close(%) - |> extrude(width - 40, %) + |> line(to = [0, thk]) + |> line(to = [thk, -thk]) + |> close() + |> extrude(length = width - 40) // build the retention bump in the back const retBack = startSketchOn(retPlane) |> startProfileAt([length / 2 + thk, 0], %) - |> line([0, thk], %) - |> line([-thk, 0], %) - |> line([0, -thk], %) - |> close(%) - |> extrude(width - 40, %) + |> line(to = [0, thk]) + |> line(to = [-thk, 0]) + |> line(to = [0, -thk]) + |> close() + |> extrude(length = width - 40) diff --git a/src/wasm-lib/tests/executor/inputs/function_sketch.kcl b/src/wasm-lib/tests/executor/inputs/function_sketch.kcl index f6afe5b992..c2d9f71fc1 100644 --- a/src/wasm-lib/tests/executor/inputs/function_sketch.kcl +++ b/src/wasm-lib/tests/executor/inputs/function_sketch.kcl @@ -1,11 +1,11 @@ fn box = (h, l, w) => { const myBox = startSketchOn('XY') |> startProfileAt([0,0], %) - |> line([0, l], %) - |> line([w, 0], %) - |> line([0, -l], %) - |> close(%) - |> extrude(h, %) + |> line(to = [0, l]) + |> line(to = [w, 0]) + |> line(to = [0, -l]) + |> close() + |> extrude(length = h) return myBox } diff --git a/src/wasm-lib/tests/executor/inputs/function_sketch_with_position.kcl b/src/wasm-lib/tests/executor/inputs/function_sketch_with_position.kcl index 7586e58f9c..6721f04591 100644 --- a/src/wasm-lib/tests/executor/inputs/function_sketch_with_position.kcl +++ b/src/wasm-lib/tests/executor/inputs/function_sketch_with_position.kcl @@ -1,11 +1,11 @@ fn box = (p, h, l, w) => { const myBox = startSketchOn('XY') |> startProfileAt(p, %) - |> line([0, l], %) - |> line([w, 0], %) - |> line([0, -l], %) - |> close(%) - |> extrude(h, %) + |> line(to = [0, l]) + |> line(to = [w, 0]) + |> line(to = [0, -l]) + |> close() + |> extrude(length = h) return myBox } diff --git a/src/wasm-lib/tests/executor/inputs/global-tags.kcl b/src/wasm-lib/tests/executor/inputs/global-tags.kcl index eb4ccf6725..06fc8594da 100644 --- a/src/wasm-lib/tests/executor/inputs/global-tags.kcl +++ b/src/wasm-lib/tests/executor/inputs/global-tags.kcl @@ -17,10 +17,10 @@ const tabThk = 4 fn rectShape = (pos, w, l) => { const rr = startSketchOn('xy') |> startProfileAt([pos[0] - (w / 2), pos[1] - (l / 2)], %) - |> lineTo([pos[0] + w / 2, pos[1] - (l / 2)], %, $edge01) - |> lineTo([pos[0] + w / 2, pos[1] + l / 2], %, $edge02) - |> lineTo([pos[0] - (w / 2), pos[1] + l / 2], %, $edge03) - |> close(%, $edge04) + |> line(end = [pos[0] + w / 2, pos[1] - (l / 2)], tag = $edge01) + |> line(end = [pos[0] + w / 2, pos[1] + l / 2], tag = $edge02) + |> line(end = [pos[0] - (w / 2), pos[1] + l / 2], tag = $edge03) + |> close(tag = $edge04) return rr } @@ -38,21 +38,21 @@ const bracketPlane = { fn bracketSketch = (w, d, t) => { const s = startSketchOn(bracketPlane) |> startProfileAt([-w / 2 - t, d + t], %) - |> lineTo([-w / 2 - t, -t], %, $edge1) - |> lineTo([w / 2 + t, -t], %, $edge2) - |> lineTo([w / 2 + t, d + t], %, $edge3) - |> lineTo([w / 2, d + t], %, $edge4) - |> lineTo([w / 2, 0], %, $edge5) - |> lineTo([-w / 2, 0], %, $edge6) - |> lineTo([-w / 2, d + t], %, $edge7) - |> close(%, $edge8) + |> line(end = [-w / 2 - t, -t], tag = $edge1) + |> line(end = [w / 2 + t, -t], tag = $edge2) + |> line(end = [w / 2 + t, d + t], tag = $edge3) + |> line(end = [w / 2, d + t], tag = $edge4) + |> line(end = [w / 2, 0], tag = $edge5) + |> line(end = [-w / 2, 0], tag = $edge6) + |> line(end = [-w / 2, d + t], tag = $edge7) + |> close(tag = $edge8) return s } // build the body of the bracket const bs = bracketSketch(width, depth, thk) const bracketBody = bs - |> extrude(length + 2 * thk, %) + |> extrude(length = length + 2 * thk) |> fillet({ radius: radius, tags: [ @@ -76,10 +76,10 @@ const tabPlane = { // build the tabs of the mounting bracket (right side) const tabsR = startSketchOn(tabPlane) |> startProfileAt([width / 2 + thk, length / 2 + thk], %) - |> line([tabWidth, -tabLength / 3], %, $edge11) - |> line([0, -tabLength / 3 * 2], %, $edge12) - |> line([-tabWidth, -tabLength / 3], %, $edge13) - |> close(%, $edge14) + |> line(to = [tabWidth, -tabLength / 3], tag = $edge11) + |> line(to = [0, -tabLength / 3 * 2], tag = $edge12) + |> line(to = [-tabWidth, -tabLength / 3], tag = $edge13) + |> close(tag = $edge14) |> hole(circle({ center: [ width / 2 + thk + tabWidth / 2, @@ -87,7 +87,7 @@ const tabsR = startSketchOn(tabPlane) ], radius: holeDiam / 2 }, %), %) - |> extrude(-tabThk, %) + |> extrude(length = -tabThk) |> fillet({ radius: holeDiam / 2, tags: [ @@ -104,10 +104,10 @@ const tabsR = startSketchOn(tabPlane) // build the tabs of the mounting bracket (left side) const tabsL = startSketchOn(tabPlane) |> startProfileAt([-width / 2 - thk, length / 2 + thk], %) - |> line([-tabWidth, -tabLength / 3], %, $edge21) - |> line([0, -tabLength / 3 * 2], %, $edge22) - |> line([tabWidth, -tabLength / 3], %, $edge23) - |> close(%, $edge24) + |> line(to = [-tabWidth, -tabLength / 3], tag = $edge21) + |> line(to = [0, -tabLength / 3 * 2], tag = $edge22) + |> line(to = [tabWidth, -tabLength / 3], tag = $edge23) + |> close(tag = $edge24) |> hole(circle({ center: [ -width / 2 - thk - (tabWidth / 2), @@ -115,7 +115,7 @@ const tabsL = startSketchOn(tabPlane) ], radius: holeDiam / 2 }, %), %) - |> extrude(-tabThk, %) + |> extrude(length = -tabThk) |> fillet({ radius: holeDiam / 2, tags: [ @@ -142,16 +142,16 @@ const retPlane = { // build the retention bump in the front const retFront = startSketchOn(retPlane) |> startProfileAt([-length / 2 - thk, 0], %) - |> line([0, thk], %) - |> line([thk, -thk], %) - |> close(%) - |> extrude(width - 40, %) + |> line(to = [0, thk]) + |> line(to = [thk, -thk]) + |> close() + |> extrude(length = width - 40) // build the retention bump in the back const retBack = startSketchOn(retPlane) |> startProfileAt([length / 2 + thk, 0], %) - |> line([0, thk], %) - |> line([-thk, 0], %) - |> line([0, -thk], %) - |> close(%) - |> extrude(width - 40, %) + |> line(to = [0, thk]) + |> line(to = [-thk, 0]) + |> line(to = [0, -thk]) + |> close() + |> extrude(length = width - 40) diff --git a/src/wasm-lib/tests/executor/inputs/helix_defaults.kcl b/src/wasm-lib/tests/executor/inputs/helix_defaults.kcl index 0c66510377..5cec8dc460 100644 --- a/src/wasm-lib/tests/executor/inputs/helix_defaults.kcl +++ b/src/wasm-lib/tests/executor/inputs/helix_defaults.kcl @@ -1,4 +1,4 @@ const part001 = startSketchOn('XY') |> circle({ center: [5, 5], radius: 10 }, %) - |> extrude(10, %) + |> extrude(length = 10) |> helix({revolutions: 16, angle_start: 0}, %) diff --git a/src/wasm-lib/tests/executor/inputs/helix_defaults_negative_extrude.kcl b/src/wasm-lib/tests/executor/inputs/helix_defaults_negative_extrude.kcl index ab26043c8e..14cc3fa5aa 100644 --- a/src/wasm-lib/tests/executor/inputs/helix_defaults_negative_extrude.kcl +++ b/src/wasm-lib/tests/executor/inputs/helix_defaults_negative_extrude.kcl @@ -1,4 +1,4 @@ const part001 = startSketchOn('XY') |> circle({ center: [5, 5], radius: 10 }, %) - |> extrude(-10, %) + |> extrude(length = -10) |> helix({revolutions: 16, angle_start: 0}, %) diff --git a/src/wasm-lib/tests/executor/inputs/helix_with_length.kcl b/src/wasm-lib/tests/executor/inputs/helix_with_length.kcl index 7818e3c5d8..6d8dfa913d 100644 --- a/src/wasm-lib/tests/executor/inputs/helix_with_length.kcl +++ b/src/wasm-lib/tests/executor/inputs/helix_with_length.kcl @@ -1,4 +1,4 @@ const part001 = startSketchOn('XY') |> circle({ center: [5, 5], radius: 10 }, %) - |> extrude(10, %) + |> extrude(length = 10) |> helix({revolutions: 16, angle_start: 0, length: 3}, %) diff --git a/src/wasm-lib/tests/executor/inputs/i_shape.kcl b/src/wasm-lib/tests/executor/inputs/i_shape.kcl index 5921da73a1..1dce3f3956 100644 --- a/src/wasm-lib/tests/executor/inputs/i_shape.kcl +++ b/src/wasm-lib/tests/executor/inputs/i_shape.kcl @@ -8,7 +8,7 @@ let corner_radius = 5.0 // but I measured intentionally to not be symmetric, // because your wrist isn't a perfect cylindrical surface let brace_base = startSketchAt([corner_radius, 0]) - |> line([width - corner_radius, 0.0], %) + |> line(to = [width - corner_radius, 0.0]) |> tangentialArcToRelative([corner_radius, corner_radius], %) |> yLine(25.0 - corner_radius, %) |> tangentialArcToRelative([-corner_radius, corner_radius], %) @@ -32,7 +32,7 @@ let brace_base = startSketchAt([corner_radius, 0]) |> tangentialArcToRelative([-corner_radius, -corner_radius], %) |> yLine(-(25.0 - corner_radius), %) |> tangentialArcToRelative([corner_radius, -corner_radius], %) - |> close(%) + |> close() let inner = startSketchAt([0, 0]) |> xLine(1.0, %) @@ -43,9 +43,9 @@ let inner = startSketchAt([0, 0]) |> tangentialArcToRelative([-corner_radius, -corner_radius], %) |> yLine(-(25.0 - (corner_radius * 2)), %) |> tangentialArcToRelative([corner_radius, -corner_radius], %) - |> close(%) + |> close() let final = brace_base |> hole(inner, %) - |> extrude(3.0, %) + |> extrude(length = 3.0) diff --git a/src/wasm-lib/tests/executor/inputs/kittycad_svg.kcl b/src/wasm-lib/tests/executor/inputs/kittycad_svg.kcl index 27b994df94..c9a9cd5685 100644 --- a/src/wasm-lib/tests/executor/inputs/kittycad_svg.kcl +++ b/src/wasm-lib/tests/executor/inputs/kittycad_svg.kcl @@ -1,311 +1,311 @@ const svg = startSketchOn('XY') |> startProfileAt([0, 0], %) -|> lineTo([2.52, -26.04], %) // MoveAbsolute -|> lineTo([2.52, -25.2], %) // VerticalLineAbsolute -|> lineTo([0.84, -25.2], %) // HorizontalLineAbsolute -|> lineTo([0.84, -24.36], %) // VerticalLineAbsolute -|> lineTo([0, -24.36], %) // HorizontalLineAbsolute -|> lineTo([0, -6.72], %) // VerticalLineAbsolute -|> lineTo([0.84, -6.72], %) // HorizontalLineAbsolute -|> lineTo([0.84, -5.88], %) // VerticalLineAbsolute -|> lineTo([1.68, -5.88], %) // HorizontalLineAbsolute -|> lineTo([1.68, -5.04], %) // VerticalLineAbsolute -|> lineTo([2.52, -5.04], %) // HorizontalLineAbsolute -|> lineTo([2.52, -4.2], %) // VerticalLineAbsolute -|> lineTo([3.36, -4.2], %) // HorizontalLineAbsolute -|> lineTo([3.36, -3.36], %) // VerticalLineAbsolute -|> lineTo([17.64, -3.36], %) // HorizontalLineAbsolute -|> lineTo([17.64, -4.2], %) // VerticalLineAbsolute -|> lineTo([18.48, -4.2], %) // HorizontalLineRelative -|> lineTo([18.48, -5.04], %) // VerticalLineHorizonal -|> lineTo([19.32, -5.04], %) // HorizontalLineRelative -|> lineTo([19.32, -5.88], %) // VerticalLineHorizonal -|> lineTo([20.16, -5.88], %) // HorizontalLineRelative -|> lineTo([20.16, -6.72], %) // VerticalLineAbsolute -|> lineTo([21, -6.72], %) // HorizontalLineAbsolute -|> lineTo([21, -24.36], %) // VerticalLineHorizonal -|> lineTo([20.16, -24.36], %) // HorizontalLineRelative -|> lineTo([20.16, -25.2], %) // VerticalLineHorizonal -|> lineTo([18.48, -25.2], %) // HorizontalLineRelative -|> lineTo([18.48, -26.04], %) // VerticalLineHorizonal -|> lineTo([15.96, -26.04], %) // HorizontalLineRelative -|> lineTo([15.96, -26.88], %) // VerticalLineHorizonal -|> lineTo([16.8, -26.88], %) // HorizontalLineRelative -|> lineTo([16.8, -28.56], %) // VerticalLineHorizonal -|> lineTo([11.76, -28.56], %) // HorizontalLineAbsolute -|> lineTo([11.76, -26.88], %) // VerticalLineAbsolute -|> lineTo([12.6, -26.88], %) // HorizontalLineAbsolute -|> lineTo([12.6, -26.04], %) // VerticalLineAbsolute -|> lineTo([8.4, -26.04], %) // HorizontalLineAbsolute -|> lineTo([8.4, -26.88], %) // VerticalLineHorizonal -|> lineTo([9.24, -26.88], %) // HorizontalLineRelative -|> lineTo([9.24, -28.56], %) // VerticalLineHorizonal -|> lineTo([4.2, -28.56], %) // HorizontalLineAbsolute -|> lineTo([4.2, -26.88], %) // VerticalLineHorizonal -|> lineTo([5.04, -26.88], %) // HorizontalLineRelative -|> lineTo([5.04, -26.04], %) // VerticalLineHorizonal +|> line(end = [2.52, -26.04]) // MoveAbsolute +|> line(end = [2.52, -25.2]) // VerticalLineAbsolute +|> line(end = [0.84, -25.2]) // HorizontalLineAbsolute +|> line(end = [0.84, -24.36]) // VerticalLineAbsolute +|> line(end = [0, -24.36]) // HorizontalLineAbsolute +|> line(end = [0, -6.72]) // VerticalLineAbsolute +|> line(end = [0.84, -6.72]) // HorizontalLineAbsolute +|> line(end = [0.84, -5.88]) // VerticalLineAbsolute +|> line(end = [1.68, -5.88]) // HorizontalLineAbsolute +|> line(end = [1.68, -5.04]) // VerticalLineAbsolute +|> line(end = [2.52, -5.04]) // HorizontalLineAbsolute +|> line(end = [2.52, -4.2]) // VerticalLineAbsolute +|> line(end = [3.36, -4.2]) // HorizontalLineAbsolute +|> line(end = [3.36, -3.36]) // VerticalLineAbsolute +|> line(end = [17.64, -3.36]) // HorizontalLineAbsolute +|> line(end = [17.64, -4.2]) // VerticalLineAbsolute +|> line(end = [18.48, -4.2]) // HorizontalLineRelative +|> line(end = [18.48, -5.04]) // VerticalLineHorizonal +|> line(end = [19.32, -5.04]) // HorizontalLineRelative +|> line(end = [19.32, -5.88]) // VerticalLineHorizonal +|> line(end = [20.16, -5.88]) // HorizontalLineRelative +|> line(end = [20.16, -6.72]) // VerticalLineAbsolute +|> line(end = [21, -6.72]) // HorizontalLineAbsolute +|> line(end = [21, -24.36]) // VerticalLineHorizonal +|> line(end = [20.16, -24.36]) // HorizontalLineRelative +|> line(end = [20.16, -25.2]) // VerticalLineHorizonal +|> line(end = [18.48, -25.2]) // HorizontalLineRelative +|> line(end = [18.48, -26.04]) // VerticalLineHorizonal +|> line(end = [15.96, -26.04]) // HorizontalLineRelative +|> line(end = [15.96, -26.88]) // VerticalLineHorizonal +|> line(end = [16.8, -26.88]) // HorizontalLineRelative +|> line(end = [16.8, -28.56]) // VerticalLineHorizonal +|> line(end = [11.76, -28.56]) // HorizontalLineAbsolute +|> line(end = [11.76, -26.88]) // VerticalLineAbsolute +|> line(end = [12.6, -26.88]) // HorizontalLineAbsolute +|> line(end = [12.6, -26.04]) // VerticalLineAbsolute +|> line(end = [8.4, -26.04]) // HorizontalLineAbsolute +|> line(end = [8.4, -26.88]) // VerticalLineHorizonal +|> line(end = [9.24, -26.88]) // HorizontalLineRelative +|> line(end = [9.24, -28.56]) // VerticalLineHorizonal +|> line(end = [4.2, -28.56]) // HorizontalLineAbsolute +|> line(end = [4.2, -26.88]) // VerticalLineHorizonal +|> line(end = [5.04, -26.88]) // HorizontalLineRelative +|> line(end = [5.04, -26.04]) // VerticalLineHorizonal -|> lineTo([0.839996, -20.58], %) // MoveRelative -|> lineTo([0.839996, -24.36], %) // VerticalLineHorizonal -|> lineTo([2.52, -24.36], %) // HorizontalLineAbsolute -|> lineTo([2.52, -25.2], %) // VerticalLineHorizonal -|> lineTo([18.48, -25.2], %) // HorizontalLineRelative -|> lineTo([18.48, -24.36], %) // VerticalLineHorizonal -|> lineTo([20.16, -24.36], %) // HorizontalLineRelative -|> lineTo([20.16, -20.58], %) // VerticalLineAbsolute +|> line(end = [0.839996, -20.58]) // MoveRelative +|> line(end = [0.839996, -24.36]) // VerticalLineHorizonal +|> line(end = [2.52, -24.36]) // HorizontalLineAbsolute +|> line(end = [2.52, -25.2]) // VerticalLineHorizonal +|> line(end = [18.48, -25.2]) // HorizontalLineRelative +|> line(end = [18.48, -24.36]) // VerticalLineHorizonal +|> line(end = [20.16, -24.36]) // HorizontalLineRelative +|> line(end = [20.16, -20.58]) // VerticalLineAbsolute // StopAbsolute -|> lineTo([7.56, -24.36], %) // MoveAbsolute -|> lineTo([7.56, -22.68], %) // VerticalLineHorizonal -|> lineTo([13.44, -22.68], %) // HorizontalLineRelative -|> lineTo([13.44, -24.36], %) // VerticalLineHorizonal +|> line(end = [7.56, -24.36]) // MoveAbsolute +|> line(end = [7.56, -22.68]) // VerticalLineHorizonal +|> line(end = [13.44, -22.68]) // HorizontalLineRelative +|> line(end = [13.44, -24.36]) // VerticalLineHorizonal -|> lineTo([1.68, -22.68], %) // MoveRelative -|> lineTo([1.68, -21.84], %) // VerticalLineHorizonal -|> lineTo([5.88, -21.84], %) // HorizontalLineRelative -|> lineTo([5.88, -22.68], %) // VerticalLineHorizonal +|> line(end = [1.68, -22.68]) // MoveRelative +|> line(end = [1.68, -21.84]) // VerticalLineHorizonal +|> line(end = [5.88, -21.84]) // HorizontalLineRelative +|> line(end = [5.88, -22.68]) // VerticalLineHorizonal -|> lineTo([3.36, -24.36], %) // MoveRelative -|> lineTo([3.36, -23.52], %) // VerticalLineHorizonal -|> lineTo([5.88, -23.52], %) // HorizontalLineRelative -|> lineTo([5.88, -24.36], %) // VerticalLineHorizonal +|> line(end = [3.36, -24.36]) // MoveRelative +|> line(end = [3.36, -23.52]) // VerticalLineHorizonal +|> line(end = [5.88, -23.52]) // HorizontalLineRelative +|> line(end = [5.88, -24.36]) // VerticalLineHorizonal -|> lineTo([15.12, -22.68], %) // MoveRelative -|> lineTo([15.12, -21.84], %) // VerticalLineHorizonal -|> lineTo([15.959999999999999, -21.84], %) // HorizontalLineRelative -|> lineTo([15.959999999999999, -22.68], %) // VerticalLineHorizonal +|> line(end = [15.12, -22.68]) // MoveRelative +|> line(end = [15.12, -21.84]) // VerticalLineHorizonal +|> line(end = [15.959999999999999, -21.84]) // HorizontalLineRelative +|> line(end = [15.959999999999999, -22.68]) // VerticalLineHorizonal -|> lineTo([16.8, -22.68], %) // MoveRelative -|> lineTo([16.8, -21.84], %) // VerticalLineHorizonal -|> lineTo([17.64, -21.84], %) // HorizontalLineRelative -|> lineTo([17.64, -22.68], %) // VerticalLineHorizonal +|> line(end = [16.8, -22.68]) // MoveRelative +|> line(end = [16.8, -21.84]) // VerticalLineHorizonal +|> line(end = [17.64, -21.84]) // HorizontalLineRelative +|> line(end = [17.64, -22.68]) // VerticalLineHorizonal -|> lineTo([18.48, -22.68], %) // MoveRelative -|> lineTo([18.48, -21.84], %) // VerticalLineHorizonal -|> lineTo([19.32, -21.84], %) // HorizontalLineRelative -|> lineTo([19.32, -22.68], %) // VerticalLineHorizonal +|> line(end = [18.48, -22.68]) // MoveRelative +|> line(end = [18.48, -21.84]) // VerticalLineHorizonal +|> line(end = [19.32, -21.84]) // HorizontalLineRelative +|> line(end = [19.32, -22.68]) // VerticalLineHorizonal -|> lineTo([15.12, -24.36], %) // MoveRelative -|> lineTo([15.12, -23.52], %) // VerticalLineHorizonal -|> lineTo([17.64, -23.52], %) // HorizontalLineRelative -|> lineTo([17.64, -24.36], %) // VerticalLineHorizonal +|> line(end = [15.12, -24.36]) // MoveRelative +|> line(end = [15.12, -23.52]) // VerticalLineHorizonal +|> line(end = [17.64, -23.52]) // HorizontalLineRelative +|> line(end = [17.64, -24.36]) // VerticalLineHorizonal -|> lineTo([18.48, -5.88], %) // MoveAbsolute -|> lineTo([18.48, -5.04], %) // VerticalLineAbsolute -|> lineTo([17.64, -5.04], %) // HorizontalLineAbsolute -|> lineTo([17.64, -4.2], %) // VerticalLineAbsolute -|> lineTo([3.36, -4.2], %) // HorizontalLineAbsolute -|> lineTo([3.36, -5.04], %) // VerticalLineAbsolute -|> lineTo([2.52, -5.04], %) // HorizontalLineAbsolute -|> lineTo([2.52, -5.88], %) // VerticalLineAbsolute -|> lineTo([1.68, -5.88], %) // HorizontalLineAbsolute -|> lineTo([1.68, -6.72], %) // VerticalLineAbsolute -|> lineTo([0.839996, -6.72], %) // HorizontalLineAbsolute -|> lineTo([0.839996, -8.4], %) // VerticalLineAbsolute -|> lineTo([20.16, -8.4], %) // HorizontalLineAbsolute -|> lineTo([20.16, -6.72], %) // VerticalLineAbsolute -|> lineTo([19.32, -6.72], %) // HorizontalLineAbsolute -|> lineTo([19.32, -5.88], %) // VerticalLineAbsolute +|> line(end = [18.48, -5.88]) // MoveAbsolute +|> line(end = [18.48, -5.04]) // VerticalLineAbsolute +|> line(end = [17.64, -5.04]) // HorizontalLineAbsolute +|> line(end = [17.64, -4.2]) // VerticalLineAbsolute +|> line(end = [3.36, -4.2]) // HorizontalLineAbsolute +|> line(end = [3.36, -5.04]) // VerticalLineAbsolute +|> line(end = [2.52, -5.04]) // HorizontalLineAbsolute +|> line(end = [2.52, -5.88]) // VerticalLineAbsolute +|> line(end = [1.68, -5.88]) // HorizontalLineAbsolute +|> line(end = [1.68, -6.72]) // VerticalLineAbsolute +|> line(end = [0.839996, -6.72]) // HorizontalLineAbsolute +|> line(end = [0.839996, -8.4]) // VerticalLineAbsolute +|> line(end = [20.16, -8.4]) // HorizontalLineAbsolute +|> line(end = [20.16, -6.72]) // VerticalLineAbsolute +|> line(end = [19.32, -6.72]) // HorizontalLineAbsolute +|> line(end = [19.32, -5.88]) // VerticalLineAbsolute -|> lineTo([20.16, -7.56], %) // MoveAbsolute -|> lineTo([0.839996, -7.56], %) // HorizontalLineAbsolute -|> lineTo([0.839996, -19.32], %) // VerticalLineAbsolute -|> lineTo([20.16, -19.32], %) // HorizontalLineAbsolute +|> line(end = [20.16, -7.56]) // MoveAbsolute +|> line(end = [0.839996, -7.56]) // HorizontalLineAbsolute +|> line(end = [0.839996, -19.32]) // VerticalLineAbsolute +|> line(end = [20.16, -19.32]) // HorizontalLineAbsolute -|> lineTo([3.36, -10.08], %) // MoveAbsolute -|> lineTo([3.36, -9.24001], %) // VerticalLineAbsolute -|> lineTo([17.64, -9.24001], %) // HorizontalLineAbsolute -|> lineTo([17.64, -10.08], %) // VerticalLineAbsolute -|> lineTo([18.48, -10.08], %) // HorizontalLineRelative -|> lineTo([18.48, -16.8], %) // VerticalLineHorizonal -|> lineTo([17.64, -16.8], %) // HorizontalLineRelative -|> lineTo([17.64, -17.64], %) // VerticalLineHorizonal -|> lineTo([3.36, -17.64], %) // HorizontalLineAbsolute -|> lineTo([3.36, -16.8], %) // VerticalLineAbsolute -|> lineTo([2.52, -16.8], %) // HorizontalLineAbsolute -|> lineTo([2.52, -10.080000000000002], %) // VerticalLineHorizonal +|> line(end = [3.36, -10.08]) // MoveAbsolute +|> line(end = [3.36, -9.24001]) // VerticalLineAbsolute +|> line(end = [17.64, -9.24001]) // HorizontalLineAbsolute +|> line(end = [17.64, -10.08]) // VerticalLineAbsolute +|> line(end = [18.48, -10.08]) // HorizontalLineRelative +|> line(end = [18.48, -16.8]) // VerticalLineHorizonal +|> line(end = [17.64, -16.8]) // HorizontalLineRelative +|> line(end = [17.64, -17.64]) // VerticalLineHorizonal +|> line(end = [3.36, -17.64]) // HorizontalLineAbsolute +|> line(end = [3.36, -16.8]) // VerticalLineAbsolute +|> line(end = [2.52, -16.8]) // HorizontalLineAbsolute +|> line(end = [2.52, -10.080000000000002]) // VerticalLineHorizonal -|> lineTo([13.44, -10.92], %) // MoveRelative -|> lineTo([13.44, -10.08], %) // VerticalLineHorizonal -|> lineTo([15.12, -10.08], %) // HorizontalLineRelative -|> lineTo([15.12, -13.44], %) // VerticalLineHorizonal -|> lineTo([14.28, -13.44], %) // HorizontalLineRelative +|> line(end = [13.44, -10.92]) // MoveRelative +|> line(end = [13.44, -10.08]) // VerticalLineHorizonal +|> line(end = [15.12, -10.08]) // HorizontalLineRelative +|> line(end = [15.12, -13.44]) // VerticalLineHorizonal +|> line(end = [14.28, -13.44]) // HorizontalLineRelative -|> lineTo([9.24, -13.44], %) // MoveRelative -|> lineTo([11.76, -13.44], %) // HorizontalLineRelative -|> lineTo([11.76, -14.28], %) // VerticalLineHorizonal -|> lineTo([10.92, -14.28], %) // HorizontalLineRelative here -|> lineTo([10.92, -15.959999999999999], %) // VerticalLineHorizonal -|> lineTo([13.44, -15.959999999999999], %) // HorizontalLineRelative -|> lineTo([13.44, -15.12], %) // VerticalLineHorizonal -|> lineTo([14.28, -15.12], %) // HorizontalLineRelative -|> lineTo([14.28, -15.959999999999999], %) // VerticalLineHorizonal -|> lineTo([13.44, -15.959999999999999], %) // HorizontalLineAbsolute -|> lineTo([13.44, -16.8], %) // VerticalLineAbsolute -|> lineTo([7.56, -16.8], %) // HorizontalLineAbsolute -|> lineTo([7.56, -15.96], %) // VerticalLineAbsolute -|> lineTo([6.72, -15.96], %) // HorizontalLineAbsolute -|> lineTo([6.72, -15.120000000000001], %) // VerticalLineHorizonal -|> lineTo([7.56, -15.120000000000001], %) // HorizontalLineRelative -|> lineTo([7.56, -15.96], %) // VerticalLineHorizonal -|> lineTo([10.08, -15.96], %) // HorizontalLineRelative -|> lineTo([10.08, -14.28], %) // VerticalLineAbsolute -|> lineTo([9.24, -14.28], %) // HorizontalLineAbsolute +|> line(end = [9.24, -13.44]) // MoveRelative +|> line(end = [11.76, -13.44]) // HorizontalLineRelative +|> line(end = [11.76, -14.28]) // VerticalLineHorizonal +|> line(end = [10.92, -14.28]) // HorizontalLineRelative here +|> line(end = [10.92, -15.959999999999999]) // VerticalLineHorizonal +|> line(end = [13.44, -15.959999999999999]) // HorizontalLineRelative +|> line(end = [13.44, -15.12]) // VerticalLineHorizonal +|> line(end = [14.28, -15.12]) // HorizontalLineRelative +|> line(end = [14.28, -15.959999999999999]) // VerticalLineHorizonal +|> line(end = [13.44, -15.959999999999999]) // HorizontalLineAbsolute +|> line(end = [13.44, -16.8]) // VerticalLineAbsolute +|> line(end = [7.56, -16.8]) // HorizontalLineAbsolute +|> line(end = [7.56, -15.96]) // VerticalLineAbsolute +|> line(end = [6.72, -15.96]) // HorizontalLineAbsolute +|> line(end = [6.72, -15.120000000000001]) // VerticalLineHorizonal +|> line(end = [7.56, -15.120000000000001]) // HorizontalLineRelative +|> line(end = [7.56, -15.96]) // VerticalLineHorizonal +|> line(end = [10.08, -15.96]) // HorizontalLineRelative +|> line(end = [10.08, -14.28]) // VerticalLineAbsolute +|> line(end = [9.24, -14.28]) // HorizontalLineAbsolute -|> lineTo([7.56, -12.6], %) // MoveAbsolute -|> lineTo([7.56, -11.76], %) // VerticalLineAbsolute -|> lineTo([5.04, -11.76], %) // HorizontalLineAbsolute -|> lineTo([5.04, -12.6], %) // VerticalLineAbsolute -|> lineTo([4.2, -12.6], %) // HorizontalLineAbsolute -|> lineTo([4.2, -11.76], %) // VerticalLineHorizonal -|> lineTo([5.04, -11.76], %) // HorizontalLineRelative -|> lineTo([5.04, -10.92], %) // VerticalLineHorizonal -|> lineTo([7.5600000000000005, -10.92], %) // HorizontalLineRelative -|> lineTo([7.5600000000000005, -11.76], %) // VerticalLineHorizonal -|> lineTo([8.4, -11.76], %) // HorizontalLineAbsolute -|> lineTo([8.4, -12.6], %) // VerticalLineHorizonal +|> line(end = [7.56, -12.6]) // MoveAbsolute +|> line(end = [7.56, -11.76]) // VerticalLineAbsolute +|> line(end = [5.04, -11.76]) // HorizontalLineAbsolute +|> line(end = [5.04, -12.6]) // VerticalLineAbsolute +|> line(end = [4.2, -12.6]) // HorizontalLineAbsolute +|> line(end = [4.2, -11.76]) // VerticalLineHorizonal +|> line(end = [5.04, -11.76]) // HorizontalLineRelative +|> line(end = [5.04, -10.92]) // VerticalLineHorizonal +|> line(end = [7.5600000000000005, -10.92]) // HorizontalLineRelative +|> line(end = [7.5600000000000005, -11.76]) // VerticalLineHorizonal +|> line(end = [8.4, -11.76]) // HorizontalLineAbsolute +|> line(end = [8.4, -12.6]) // VerticalLineHorizonal -|> lineTo([3.36, -5.88], %) // MoveAbsolute -|> lineTo([3.36, -5.04], %) // VerticalLineAbsolute -|> lineTo([4.2, -5.04], %) // HorizontalLineAbsolute -|> lineTo([4.2, -3.36], %) // VerticalLineAbsolute -|> lineTo([5.04, -3.36], %) // HorizontalLineAbsolute -|> lineTo([5.04, -1.68], %) // VerticalLineAbsolute -|> lineTo([5.88, -1.68], %) // HorizontalLineAbsolute -|> lineTo([5.88, -0.83999599], %) // VerticalLineAbsolute -|> lineTo([6.72, -0.83999599], %) // HorizontalLineAbsolute -|> lineTo([6.72, -1.68], %) // VerticalLineAbsolute -|> lineTo([7.56, -1.68], %) // HorizontalLineAbsolute -|> lineTo([7.56, -3.36], %) // VerticalLineAbsolute -|> lineTo([8.4, -3.36], %) // HorizontalLineAbsolute -|> lineTo([8.4, -5.04], %) // VerticalLineHorizonal -|> lineTo([9.24, -5.04], %) // HorizontalLineRelative -|> lineTo([9.24, -5.88], %) // VerticalLineHorizonal +|> line(end = [3.36, -5.88]) // MoveAbsolute +|> line(end = [3.36, -5.04]) // VerticalLineAbsolute +|> line(end = [4.2, -5.04]) // HorizontalLineAbsolute +|> line(end = [4.2, -3.36]) // VerticalLineAbsolute +|> line(end = [5.04, -3.36]) // HorizontalLineAbsolute +|> line(end = [5.04, -1.68]) // VerticalLineAbsolute +|> line(end = [5.88, -1.68]) // HorizontalLineAbsolute +|> line(end = [5.88, -0.83999599]) // VerticalLineAbsolute +|> line(end = [6.72, -0.83999599]) // HorizontalLineAbsolute +|> line(end = [6.72, -1.68]) // VerticalLineAbsolute +|> line(end = [7.56, -1.68]) // HorizontalLineAbsolute +|> line(end = [7.56, -3.36]) // VerticalLineAbsolute +|> line(end = [8.4, -3.36]) // HorizontalLineAbsolute +|> line(end = [8.4, -5.04]) // VerticalLineHorizonal +|> line(end = [9.24, -5.04]) // HorizontalLineRelative +|> line(end = [9.24, -5.88]) // VerticalLineHorizonal -|> lineTo([17.64, -5.04], %) // MoveAbsolute -|> lineTo([17.64, -5.88], %) // VerticalLineAbsolute -|> lineTo([11.76, -5.88], %) // HorizontalLineAbsolute -|> lineTo([11.76, -5.04], %) // VerticalLineAbsolute -|> lineTo([12.6, -5.04], %) // HorizontalLineAbsolute -|> lineTo([12.6, -3.36], %) // VerticalLineAbsolute -|> lineTo([13.44, -3.36], %) // HorizontalLineRelative -|> lineTo([13.44, -1.68], %) // VerticalLineAbsolute -|> lineTo([14.28, -1.68], %) // HorizontalLineRelative -|> lineTo([14.28, -0.83999599], %) // VerticalLineAbsolute -|> lineTo([15.12, -0.83999599], %) // HorizontalLineRelative -|> lineTo([15.12, -1.68], %) // VerticalLineAbsolute -|> lineTo([15.959999999999999, -1.68], %) // HorizontalLineRelative -|> lineTo([15.959999999999999, -3.36], %) // VerticalLineHorizonal -|> lineTo([16.8, -3.36], %) // HorizontalLineRelative -|> lineTo([16.8, -5.04], %) // VerticalLineHorizonal +|> line(end = [17.64, -5.04]) // MoveAbsolute +|> line(end = [17.64, -5.88]) // VerticalLineAbsolute +|> line(end = [11.76, -5.88]) // HorizontalLineAbsolute +|> line(end = [11.76, -5.04]) // VerticalLineAbsolute +|> line(end = [12.6, -5.04]) // HorizontalLineAbsolute +|> line(end = [12.6, -3.36]) // VerticalLineAbsolute +|> line(end = [13.44, -3.36]) // HorizontalLineRelative +|> line(end = [13.44, -1.68]) // VerticalLineAbsolute +|> line(end = [14.28, -1.68]) // HorizontalLineRelative +|> line(end = [14.28, -0.83999599]) // VerticalLineAbsolute +|> line(end = [15.12, -0.83999599]) // HorizontalLineRelative +|> line(end = [15.12, -1.68]) // VerticalLineAbsolute +|> line(end = [15.959999999999999, -1.68]) // HorizontalLineRelative +|> line(end = [15.959999999999999, -3.36]) // VerticalLineHorizonal +|> line(end = [16.8, -3.36]) // HorizontalLineRelative +|> line(end = [16.8, -5.04]) // VerticalLineHorizonal -|> lineTo([13.44, -1.68], %) // MoveAbsolute -|> lineTo([13.44, -0], %) // VerticalLineAbsolute -|> lineTo([15.959999999999999, -0], %) // HorizontalLineRelative -|> lineTo([15.959999999999999, -1.68], %) // VerticalLineHorizonal -|> lineTo([16.8, -1.68], %) // HorizontalLineRelative -|> lineTo([16.8, -3.36], %) // VerticalLineHorizonal -|> lineTo([17.64, -3.36], %) // HorizontalLineRelative -|> lineTo([17.64, -4.62], %) // VerticalLineAbsolute -|> lineTo([16.8, -4.62], %) // HorizontalLineAbsolute -|> lineTo([16.8, -3.36], %) // VerticalLineAbsolute -|> lineTo([15.96, -3.36], %) // HorizontalLineAbsolute -|> lineTo([15.96, -1.68], %) // VerticalLineAbsolute -|> lineTo([15.12, -1.68], %) // HorizontalLineAbsolute -|> lineTo([15.12, -0.83999999], %) // VerticalLineAbsolute -|> lineTo([14.28, -0.83999999], %) // HorizontalLineAbsolute -|> lineTo([14.28, -1.68], %) // VerticalLineAbsolute -|> lineTo([13.44, -1.68], %) // HorizontalLineAbsolute -|> lineTo([13.44, -3.36], %) // VerticalLineAbsolute -|> lineTo([12.6, -3.36], %) // HorizontalLineAbsolute -|> lineTo([12.6, -4.62], %) // VerticalLineAbsolute -|> lineTo([11.76, -4.62], %) // HorizontalLineAbsolute -|> lineTo([11.76, -3.36], %) // VerticalLineAbsolute -|> lineTo([12.6, -3.36], %) // HorizontalLineAbsolute -|> lineTo([12.6, -1.68], %) // VerticalLineAbsolute +|> line(end = [13.44, -1.68]) // MoveAbsolute +|> line(end = [13.44, -0]) // VerticalLineAbsolute +|> line(end = [15.959999999999999, -0]) // HorizontalLineRelative +|> line(end = [15.959999999999999, -1.68]) // VerticalLineHorizonal +|> line(end = [16.8, -1.68]) // HorizontalLineRelative +|> line(end = [16.8, -3.36]) // VerticalLineHorizonal +|> line(end = [17.64, -3.36]) // HorizontalLineRelative +|> line(end = [17.64, -4.62]) // VerticalLineAbsolute +|> line(end = [16.8, -4.62]) // HorizontalLineAbsolute +|> line(end = [16.8, -3.36]) // VerticalLineAbsolute +|> line(end = [15.96, -3.36]) // HorizontalLineAbsolute +|> line(end = [15.96, -1.68]) // VerticalLineAbsolute +|> line(end = [15.12, -1.68]) // HorizontalLineAbsolute +|> line(end = [15.12, -0.83999999]) // VerticalLineAbsolute +|> line(end = [14.28, -0.83999999]) // HorizontalLineAbsolute +|> line(end = [14.28, -1.68]) // VerticalLineAbsolute +|> line(end = [13.44, -1.68]) // HorizontalLineAbsolute +|> line(end = [13.44, -3.36]) // VerticalLineAbsolute +|> line(end = [12.6, -3.36]) // HorizontalLineAbsolute +|> line(end = [12.6, -4.62]) // VerticalLineAbsolute +|> line(end = [11.76, -4.62]) // HorizontalLineAbsolute +|> line(end = [11.76, -3.36]) // VerticalLineAbsolute +|> line(end = [12.6, -3.36]) // HorizontalLineAbsolute +|> line(end = [12.6, -1.68]) // VerticalLineAbsolute -|> lineTo([5.04, -1.68], %) // MoveAbsolute -|> lineTo([5.04, -0], %) // VerticalLineAbsolute -|> lineTo([7.56, -0], %) // HorizontalLineAbsolute -|> lineTo([7.56, -1.68], %) // VerticalLineAbsolute -|> lineTo([8.4, -1.68], %) // HorizontalLineAbsolute -|> lineTo([8.4, -3.36], %) // VerticalLineAbsolute -|> lineTo([9.24, -3.36], %) // HorizontalLineAbsolute -|> lineTo([9.24, -4.62], %) // VerticalLineAbsolute -|> lineTo([8.4, -4.62], %) // HorizontalLineAbsolute -|> lineTo([8.4, -3.36], %) // VerticalLineAbsolute -|> lineTo([7.56, -3.36], %) // HorizontalLineAbsolute -|> lineTo([7.56, -1.68], %) // VerticalLineAbsolute -|> lineTo([6.72, -1.68], %) // HorizontalLineAbsolute -|> lineTo([6.72, -0.83999999], %) // VerticalLineAbsolute -|> lineTo([5.88, -0.83999999], %) // HorizontalLineAbsolute -|> lineTo([5.88, -1.68], %) // VerticalLineAbsolute -|> lineTo([5.04, -1.68], %) // HorizontalLineAbsolute -|> lineTo([5.04, -3.36], %) // VerticalLineAbsolute -|> lineTo([4.2, -3.36], %) // HorizontalLineAbsolute -|> lineTo([4.2, -4.62], %) // VerticalLineAbsolute -|> lineTo([3.36, -4.62], %) // HorizontalLineAbsolute -|> lineTo([3.36, -3.36], %) // VerticalLineAbsolute -|> lineTo([4.2, -3.36], %) // HorizontalLineAbsolute -|> lineTo([4.2, -1.68], %) // VerticalLineAbsolute +|> line(end = [5.04, -1.68]) // MoveAbsolute +|> line(end = [5.04, -0]) // VerticalLineAbsolute +|> line(end = [7.56, -0]) // HorizontalLineAbsolute +|> line(end = [7.56, -1.68]) // VerticalLineAbsolute +|> line(end = [8.4, -1.68]) // HorizontalLineAbsolute +|> line(end = [8.4, -3.36]) // VerticalLineAbsolute +|> line(end = [9.24, -3.36]) // HorizontalLineAbsolute +|> line(end = [9.24, -4.62]) // VerticalLineAbsolute +|> line(end = [8.4, -4.62]) // HorizontalLineAbsolute +|> line(end = [8.4, -3.36]) // VerticalLineAbsolute +|> line(end = [7.56, -3.36]) // HorizontalLineAbsolute +|> line(end = [7.56, -1.68]) // VerticalLineAbsolute +|> line(end = [6.72, -1.68]) // HorizontalLineAbsolute +|> line(end = [6.72, -0.83999999]) // VerticalLineAbsolute +|> line(end = [5.88, -0.83999999]) // HorizontalLineAbsolute +|> line(end = [5.88, -1.68]) // VerticalLineAbsolute +|> line(end = [5.04, -1.68]) // HorizontalLineAbsolute +|> line(end = [5.04, -3.36]) // VerticalLineAbsolute +|> line(end = [4.2, -3.36]) // HorizontalLineAbsolute +|> line(end = [4.2, -4.62]) // VerticalLineAbsolute +|> line(end = [3.36, -4.62]) // HorizontalLineAbsolute +|> line(end = [3.36, -3.36]) // VerticalLineAbsolute +|> line(end = [4.2, -3.36]) // HorizontalLineAbsolute +|> line(end = [4.2, -1.68]) // VerticalLineAbsolute -|> lineTo([13.44, -5.88], %) // MoveAbsolute -|> lineTo([13.44, -5.04], %) // VerticalLineAbsolute -|> lineTo([14.28, -5.04], %) // HorizontalLineRelative -|> lineTo([14.28, -4.2], %) // VerticalLineAbsolute -|> lineTo([15.12, -4.2], %) // HorizontalLineRelative -|> lineTo([15.12, -5.04], %) // VerticalLineHorizonal -|> lineTo([15.959999999999999, -5.04], %) // HorizontalLineRelative -|> lineTo([15.959999999999999, -5.88], %) // VerticalLineHorizonal +|> line(end = [13.44, -5.88]) // MoveAbsolute +|> line(end = [13.44, -5.04]) // VerticalLineAbsolute +|> line(end = [14.28, -5.04]) // HorizontalLineRelative +|> line(end = [14.28, -4.2]) // VerticalLineAbsolute +|> line(end = [15.12, -4.2]) // HorizontalLineRelative +|> line(end = [15.12, -5.04]) // VerticalLineHorizonal +|> line(end = [15.959999999999999, -5.04]) // HorizontalLineRelative +|> line(end = [15.959999999999999, -5.88]) // VerticalLineHorizonal -|> lineTo([5.88, -5.04], %) // MoveAbsolute -|> lineTo([5.88, -4.2], %) // VerticalLineAbsolute -|> lineTo([6.72, -4.2], %) // HorizontalLineAbsolute -|> lineTo([6.72, -5.04], %) // VerticalLineAbsolute -|> lineTo([7.56, -5.04], %) // HorizontalLineAbsolute -|> lineTo([7.56, -5.88], %) // VerticalLineAbsolute -|> lineTo([5.04, -5.88], %) // HorizontalLineAbsolute -|> lineTo([5.04, -5.04], %) // VerticalLineAbsolute +|> line(end = [5.88, -5.04]) // MoveAbsolute +|> line(end = [5.88, -4.2]) // VerticalLineAbsolute +|> line(end = [6.72, -4.2]) // HorizontalLineAbsolute +|> line(end = [6.72, -5.04]) // VerticalLineAbsolute +|> line(end = [7.56, -5.04]) // HorizontalLineAbsolute +|> line(end = [7.56, -5.88]) // VerticalLineAbsolute +|> line(end = [5.04, -5.88]) // HorizontalLineAbsolute +|> line(end = [5.04, -5.04]) // VerticalLineAbsolute -|> lineTo([17.64, -5.88], %) // MoveAbsolute -|> lineTo([17.64, -5.04], %) // VerticalLineAbsolute -|> lineTo([16.8, -5.04], %) // HorizontalLineAbsolute -|> lineTo([16.8, -4.2], %) // VerticalLineAbsolute -|> lineTo([17.64, -4.2], %) // HorizontalLineRelative -|> lineTo([17.64, -5.04], %) // VerticalLineHorizonal -|> lineTo([18.48, -5.04], %) // HorizontalLineRelative -|> lineTo([18.48, -5.88], %) // VerticalLineHorizonal +|> line(end = [17.64, -5.88]) // MoveAbsolute +|> line(end = [17.64, -5.04]) // VerticalLineAbsolute +|> line(end = [16.8, -5.04]) // HorizontalLineAbsolute +|> line(end = [16.8, -4.2]) // VerticalLineAbsolute +|> line(end = [17.64, -4.2]) // HorizontalLineRelative +|> line(end = [17.64, -5.04]) // VerticalLineHorizonal +|> line(end = [18.48, -5.04]) // HorizontalLineRelative +|> line(end = [18.48, -5.88]) // VerticalLineHorizonal -|> lineTo([3.36, -5.04], %) // MoveAbsolute -|> lineTo([3.36, -5.88], %) // VerticalLineAbsolute -|> lineTo([2.52, -5.88], %) // HorizontalLineAbsolute -|> lineTo([2.52, -5.04], %) // VerticalLineAbsolute -|> lineTo([3.36, -5.04], %) // HorizontalLineAbsolute -|> lineTo([3.36, -4.2], %) // VerticalLineAbsolute -|> lineTo([4.2, -4.2], %) // HorizontalLineAbsolute -|> lineTo([4.2, -5.04], %) // VerticalLineHorizonal +|> line(end = [3.36, -5.04]) // MoveAbsolute +|> line(end = [3.36, -5.88]) // VerticalLineAbsolute +|> line(end = [2.52, -5.88]) // HorizontalLineAbsolute +|> line(end = [2.52, -5.04]) // VerticalLineAbsolute +|> line(end = [3.36, -5.04]) // HorizontalLineAbsolute +|> line(end = [3.36, -4.2]) // VerticalLineAbsolute +|> line(end = [4.2, -4.2]) // HorizontalLineAbsolute +|> line(end = [4.2, -5.04]) // VerticalLineHorizonal -|> lineTo([8.4, -4.2], %) // MoveRelative -|> lineTo([9.24, -4.2], %) // HorizontalLineRelative -|> lineTo([9.24, -5.04], %) // VerticalLineHorizonal -|> lineTo([10.08, -5.04], %) // HorizontalLineRelative -|> lineTo([10.08, -5.88], %) // VerticalLineAbsolute -|> lineTo([9.24, -5.88], %) // HorizontalLineAbsolute -|> lineTo([9.24, -5.04], %) // VerticalLineAbsolute -|> lineTo([8.4, -5.04], %) // HorizontalLineAbsolute +|> line(end = [8.4, -4.2]) // MoveRelative +|> line(end = [9.24, -4.2]) // HorizontalLineRelative +|> line(end = [9.24, -5.04]) // VerticalLineHorizonal +|> line(end = [10.08, -5.04]) // HorizontalLineRelative +|> line(end = [10.08, -5.88]) // VerticalLineAbsolute +|> line(end = [9.24, -5.88]) // HorizontalLineAbsolute +|> line(end = [9.24, -5.04]) // VerticalLineAbsolute +|> line(end = [8.4, -5.04]) // HorizontalLineAbsolute -|> lineTo([11.76, -4.2], %) // MoveAbsolute -|> lineTo([12.6, -4.2], %) // HorizontalLineAbsolute -|> lineTo([12.6, -5.04], %) // VerticalLineAbsolute -|> lineTo([11.76, -5.04], %) // HorizontalLineAbsolute -|> lineTo([11.76, -5.88], %) // VerticalLineAbsolute -|> lineTo([10.92, -5.88], %) // HorizontalLineAbsolute -|> lineTo([10.92, -5.04], %) // VerticalLineAbsolute -|> lineTo([11.76, -5.04], %) // HorizontalLineRelative +|> line(end = [11.76, -4.2]) // MoveAbsolute +|> line(end = [12.6, -4.2]) // HorizontalLineAbsolute +|> line(end = [12.6, -5.04]) // VerticalLineAbsolute +|> line(end = [11.76, -5.04]) // HorizontalLineAbsolute +|> line(end = [11.76, -5.88]) // VerticalLineAbsolute +|> line(end = [10.92, -5.88]) // HorizontalLineAbsolute +|> line(end = [10.92, -5.04]) // VerticalLineAbsolute +|> line(end = [11.76, -5.04]) // HorizontalLineRelative -|> lineTo([14.28, -10.92], %) // MoveRelative -|> lineTo([13.44, -10.92], %) // HorizontalLineRelative -|> lineTo([13.44, -13.44], %) // VerticalLineHorizonal -|> lineTo([14.28, -13.44], %) // HorizontalLineRelative -|> close(%) -|> extrude(1, %) +|> line(end = [14.28, -10.92]) // MoveRelative +|> line(end = [13.44, -10.92]) // HorizontalLineRelative +|> line(end = [13.44, -13.44]) // VerticalLineHorizonal +|> line(end = [14.28, -13.44]) // HorizontalLineRelative +|> close() +|> extrude(length = 1) diff --git a/src/wasm-lib/tests/executor/inputs/lego.kcl b/src/wasm-lib/tests/executor/inputs/lego.kcl index c321f0acd6..174d0aaaa1 100644 --- a/src/wasm-lib/tests/executor/inputs/lego.kcl +++ b/src/wasm-lib/tests/executor/inputs/lego.kcl @@ -21,22 +21,22 @@ const wSegments = total_width / (wbumps + 1) // make the base const s = startSketchOn('XY') |> startProfileAt([-total_width / 2, -total_length / 2], %) - |> line([total_width, 0], %) - |> line([0, total_length], %) - |> line([-total_width, 0], %) - |> close(%) - |> extrude(height, %) + |> line(to = [total_width, 0]) + |> line(to = [0, total_length]) + |> line(to = [-total_width, 0]) + |> close() + |> extrude(length = height) const shellExtrude = startSketchOn(s, "start") |> startProfileAt([ -(total_width / 2 - t), -(total_length / 2 - t) ], %) - |> line([total_width - (2 * t), 0], %) - |> line([0, total_length - (2 * t)], %) - |> line([-(total_width - (2 * t)), 0], %) - |> close(%) - |> extrude(-(height - t), %) + |> line(to = [total_width - (2 * t), 0]) + |> line(to = [0, total_length - (2 * t)]) + |> line(to = [-(total_width - (2 * t)), 0]) + |> close() + |> extrude(length = -(height - t)) const peg = startSketchOn(s, "end") |> circle({ center: [ @@ -53,4 +53,4 @@ const peg = startSketchOn(s, "end") instances: 10, distance: 7 }, %) - |> extrude(bumpHeight, %) + |> extrude(length = bumpHeight) diff --git a/src/wasm-lib/tests/executor/inputs/linear_pattern3d_a_pattern.kcl b/src/wasm-lib/tests/executor/inputs/linear_pattern3d_a_pattern.kcl index 36097c87ba..5d26616cf9 100644 --- a/src/wasm-lib/tests/executor/inputs/linear_pattern3d_a_pattern.kcl +++ b/src/wasm-lib/tests/executor/inputs/linear_pattern3d_a_pattern.kcl @@ -1,10 +1,10 @@ exampleSketch = startSketchOn('XZ') |> startProfileAt([0, 0], %) - |> line([0, 2], %) - |> line([3, 1], %) - |> line([0, -4], %) - |> close(%) - |> extrude(1, %) + |> line(to = [0, 2]) + |> line(to = [3, 1]) + |> line(to = [0, -4]) + |> close() + |> extrude(length = 1) pattn1 = patternLinear3d({ axis: [1, 0, 0], diff --git a/src/wasm-lib/tests/executor/inputs/member_expression_sketch.kcl b/src/wasm-lib/tests/executor/inputs/member_expression_sketch.kcl index 6d4a3b7659..4e8acb0f36 100644 --- a/src/wasm-lib/tests/executor/inputs/member_expression_sketch.kcl +++ b/src/wasm-lib/tests/executor/inputs/member_expression_sketch.kcl @@ -1,17 +1,17 @@ fn square = (pos, scale) => { sg = startSketchOn('XY') |> startProfileAt(pos, %) - |> line([0, scale], %) - |> line([scale, 0], %) - |> line([0, -scale], %) - |> close(%) + |> line(to = [0, scale]) + |> line(to = [scale, 0]) + |> line(to = [0, -scale]) + |> close() return sg } sq = square([0,0], 10) cb = square([3,3], 4) - |> extrude(10, %) + |> extrude(length = 10) // pt1 = sq.paths[0] // pt2 = cb.value[0] diff --git a/src/wasm-lib/tests/executor/inputs/mike_stress_test.kcl b/src/wasm-lib/tests/executor/inputs/mike_stress_test.kcl index f5e538de1b..54953fdcaa 100644 --- a/src/wasm-lib/tests/executor/inputs/mike_stress_test.kcl +++ b/src/wasm-lib/tests/executor/inputs/mike_stress_test.kcl @@ -1,1005 +1,1005 @@ const part001 = startSketchOn('XY') |> startProfileAt([0.0, 0.0], %) - |> line([-0.3670208139314082, 0.21201331909674526], %) - |> line([-0.4707511307971115, 0.4905279615419764], %) - |> line([-0.8328324229085962, 0.4677492878818803], %) - |> line([-0.8111463382182231, -0.41814807547140576], %) - |> line([0.03807684940941125, 0.25664826686353326], %) - |> line([0.23950083339596384, 0.43693196301855575], %) - |> line([-0.16279444820904887, 0.8064475707664818], %) - |> line([-0.08972872009232558, -0.08887625823751266], %) - |> line([0.9203433427102556, -0.17343459369697545], %) - |> line([0.0017496234414517975, -0.5178508316168335], %) - |> line([0.6206263405732759, -0.8733399468665124], %) - |> line([-0.7776386664456383, 0.7602780485384968], %) - |> line([0.5439379760788592, 0.8449177589350552], %) - |> line([-0.13036646025917076, 0.012051713627069693], %) - |> line([-0.1656465612645519, -0.20775229173765486], %) - |> line([-0.0962723255929061, -0.05417797659066137], %) - |> line([0.902108945498191, 0.3958978534964961], %) - |> line([0.27997950083139167, -0.17778188444008958], %) - |> line([0.5235806061589545, 0.694318985642328], %) - |> line([0.39140760219992154, -0.7839795272576484], %) - |> line([0.8414243527073519, 0.5395591528940082], %) - |> line([0.6137667704875602, 0.22119647516722085], %) - |> line([0.8830488380766681, 0.6996724408425232], %) - |> line([-0.41290485754343953, -0.4152647361760933], %) - |> line([0.5169538755575687, -0.9085567867302617], %) - |> line([-0.6716353749059765, -0.9605576808879026], %) - |> line([0.010280170930300203, -0.37344123662342166], %) - |> line([0.10357375682791004, -0.42294321030821425], %) - |> line([0.4520311575096987, -0.11232675307600548], %) - |> line([-0.8821185914380845, -0.7155147434939819], %) - |> line([0.9195487101690416, 0.2691627465297364], %) - |> line([0.7098978191546745, 0.11710004169385968], %) - |> line([-0.37876368560819995, 0.7106729314759084], %) - |> line([-0.29728126898353335, -0.06649734568328003], %) - |> line([0.22965781558352072, -0.7601866432836641], %) - |> line([-0.6356501074317229, 0.19458425399338064], %) - |> line([0.5721251777404546, 0.2888584097921527], %) - |> line([-0.9580409549552311, -0.02243818192078395], %) - |> line([0.3299184618602866, -0.8353726942369875], %) - |> line([0.7434639386755209, -0.7919648864138378], %) - |> line([0.9935751011164615, 0.9042566468497608], %) - |> line([-0.5035812884687294, 0.5150967434989442], %) - |> line([0.5526227215900215, 0.7612604137272441], %) - |> line([0.8593271349126876, 0.08414894953725849], %) - |> line([-0.8181049219192864, -0.903548131323352], %) - |> line([0.3165782044458305, -0.24189274252014914], %) - |> line([-0.44390956414045135, -0.25912591535126905], %) - |> line([-0.6605165911891009, -0.40355115288839194], %) - |> line([-0.7170489950180006, 0.23454356079651384], %) - |> line([-0.2568187045379722, -0.45031188717601367], %) - |> line([0.6751951211858687, -0.9709424233465593], %) - |> line([-0.5689619842972184, 0.5918969913790362], %) - |> line([-0.8328324229085962, 0.4677492878818803], %) - |> line([-0.8111463382182231, -0.41814807547140576], %) - |> line([0.03807684940941125, 0.25664826686353326], %) - |> line([0.23950083339596384, 0.43693196301855575], %) - |> line([-0.16279444820904887, 0.8064475707664818], %) - |> line([-0.08972872009232558, -0.08887625823751266], %) - |> line([0.9203433427102556, -0.17343459369697545], %) - |> line([0.0017496234414517975, -0.5178508316168335], %) - |> line([0.6206263405732759, -0.8733399468665124], %) - |> line([-0.7776386664456383, 0.7602780485384968], %) - |> line([0.5439379760788592, 0.8449177589350552], %) - |> line([-0.13036646025917076, 0.012051713627069693], %) - |> line([-0.1656465612645519, -0.20775229173765486], %) - |> line([-0.0962723255929061, -0.05417797659066137], %) - |> line([0.902108945498191, 0.3958978534964961], %) - |> line([0.27997950083139167, -0.17778188444008958], %) - |> line([0.5235806061589545, 0.694318985642328], %) - |> line([0.39140760219992154, -0.7839795272576484], %) - |> line([0.8414243527073519, 0.5395591528940082], %) - |> line([0.6137667704875602, 0.22119647516722085], %) - |> line([0.8830488380766681, 0.6996724408425232], %) - |> line([-0.41290485754343953, -0.4152647361760933], %) - |> line([0.5169538755575687, -0.9085567867302617], %) - |> line([0.6751951211858687, -0.9709424233465593], %) - |> line([-0.5689619842972184, 0.5918969913790362], %) - |> line([0.9464450621708211, -0.2684908127803667], %) - |> line([0.5241732366617591, 0.9011437416408563], %) - |> line([-0.14255393713960607, -0.5194262624564814], %) - |> line([-0.4287123231350338, -0.4223564528725028], %) - |> line([-0.09316367294024519, -0.9063127021008246], %) - |> line([-0.2767766535558669, 0.6816248114129131], %) - |> line([0.9796762495562534, -0.0822145668330625], %) - |> line([-0.8666513070867441, -0.301053160242023], %) - |> line([0.537415656028112, 0.020272692875002774], %) - |> line([0.9332396256457531, -0.6228175690649898], %) - |> line([0.18052415837320734, -0.36894384647296197], %) - |> line([0.5384372634075449, 0.2377565050887107], %) - |> line([0.39043436929278874, 0.14273182483160451], %) - |> line([0.09782890412897283, 0.9907667536909659], %) - |> line([0.5286610085921146, -0.7924508308419256], %) - |> line([0.3789978184503342, 0.12396120576838676], %) - |> line([-0.9484912744890612, 0.6729649846476855], %) - |> line([0.7451758753425153, -0.21318737562458967], %) - |> line([0.1873200727251887, -0.15961374297992448], %) - |> line([-0.05729464924537564, -0.5436345558508746], %) - |> line([-0.09582414374469184, -0.7533839681212353], %) - |> line([-0.17254116580051848, -0.7669113400341137], %) - |> line([0.8944730032887609, 0.6093318694741408], %) - |> line([-0.3670208139314082, 0.21201331909674526], %) - |> line([-0.4707511307971115, 0.4905279615419764], %) - |> line([-0.8328324229085962, 0.4677492878818803], %) - |> line([-0.8111463382182231, -0.41814807547140576], %) - |> line([0.03807684940941125, 0.25664826686353326], %) - |> line([0.23950083339596384, 0.43693196301855575], %) - |> line([-0.16279444820904887, 0.8064475707664818], %) - |> line([-0.08972872009232558, -0.08887625823751266], %) - |> line([0.9203433427102556, -0.17343459369697545], %) - |> line([0.0017496234414517975, -0.5178508316168335], %) - |> line([0.6206263405732759, -0.8733399468665124], %) - |> line([-0.7776386664456383, 0.7602780485384968], %) - |> line([0.5439379760788592, 0.8449177589350552], %) - |> line([-0.13036646025917076, 0.012051713627069693], %) - |> line([-0.1656465612645519, -0.20775229173765486], %) - |> line([-0.0962723255929061, -0.05417797659066137], %) - |> line([0.902108945498191, 0.3958978534964961], %) - |> line([0.27997950083139167, -0.17778188444008958], %) - |> line([0.5235806061589545, 0.694318985642328], %) - |> line([0.39140760219992154, -0.7839795272576484], %) - |> line([0.8414243527073519, 0.5395591528940082], %) - |> line([0.6137667704875602, 0.22119647516722085], %) - |> line([0.8830488380766681, 0.6996724408425232], %) - |> line([-0.41290485754343953, -0.4152647361760933], %) - |> line([0.5169538755575687, -0.9085567867302617], %) - |> line([-0.6716353749059765, -0.9605576808879026], %) - |> line([0.010280170930300203, -0.37344123662342166], %) - |> line([0.10357375682791004, -0.42294321030821425], %) - |> line([0.4520311575096987, -0.11232675307600548], %) - |> line([-0.8821185914380845, -0.7155147434939819], %) - |> line([0.9195487101690416, 0.2691627465297364], %) - |> line([0.7098978191546745, 0.11710004169385968], %) - |> line([-0.37876368560819995, 0.7106729314759084], %) - |> line([-0.29728126898353335, -0.06649734568328003], %) - |> line([0.22965781558352072, -0.7601866432836641], %) - |> line([-0.6356501074317229, 0.19458425399338064], %) - |> line([0.5721251777404546, 0.2888584097921527], %) - |> line([-0.9580409549552311, -0.02243818192078395], %) - |> line([0.3299184618602866, -0.8353726942369875], %) - |> line([0.7434639386755209, -0.7919648864138378], %) - |> line([0.9935751011164615, 0.9042566468497608], %) - |> line([-0.5035812884687294, 0.5150967434989442], %) - |> line([0.5526227215900215, 0.7612604137272441], %) - |> line([0.8593271349126876, 0.08414894953725849], %) - |> line([-0.8181049219192864, -0.903548131323352], %) - |> line([0.3165782044458305, -0.24189274252014914], %) - |> line([-0.44390956414045135, -0.25912591535126905], %) - |> line([-0.6605165911891009, -0.40355115288839194], %) - |> line([-0.7170489950180006, 0.23454356079651384], %) - |> line([-0.2568187045379722, -0.45031188717601367], %) - |> line([0.6751951211858687, -0.9709424233465593], %) - |> line([-0.5689619842972184, 0.5918969913790362], %) - |> line([-0.8328324229085962, 0.4677492878818803], %) - |> line([-0.8111463382182231, -0.41814807547140576], %) - |> line([0.03807684940941125, 0.25664826686353326], %) - |> line([0.23950083339596384, 0.43693196301855575], %) - |> line([-0.16279444820904887, 0.8064475707664818], %) - |> line([-0.08972872009232558, -0.08887625823751266], %) - |> line([0.9203433427102556, -0.17343459369697545], %) - |> line([0.0017496234414517975, -0.5178508316168335], %) - |> line([0.6206263405732759, -0.8733399468665124], %) - |> line([-0.7776386664456383, 0.7602780485384968], %) - |> line([0.5439379760788592, 0.8449177589350552], %) - |> line([-0.13036646025917076, 0.012051713627069693], %) - |> line([-0.1656465612645519, -0.20775229173765486], %) - |> line([-0.0962723255929061, -0.05417797659066137], %) - |> line([0.902108945498191, 0.3958978534964961], %) - |> line([0.27997950083139167, -0.17778188444008958], %) - |> line([0.5235806061589545, 0.694318985642328], %) - |> line([0.39140760219992154, -0.7839795272576484], %) - |> line([0.8414243527073519, 0.5395591528940082], %) - |> line([0.6137667704875602, 0.22119647516722085], %) - |> line([0.8830488380766681, 0.6996724408425232], %) - |> line([-0.3670208139314082, 0.21201331909674526], %) - |> line([-0.4707511307971115, 0.4905279615419764], %) - |> line([-0.8328324229085962, 0.4677492878818803], %) - |> line([-0.8111463382182231, -0.41814807547140576], %) - |> line([0.03807684940941125, 0.25664826686353326], %) - |> line([0.23950083339596384, 0.43693196301855575], %) - |> line([-0.16279444820904887, 0.8064475707664818], %) - |> line([-0.08972872009232558, -0.08887625823751266], %) - |> line([0.9203433427102556, -0.17343459369697545], %) - |> line([0.0017496234414517975, -0.5178508316168335], %) - |> line([0.6206263405732759, -0.8733399468665124], %) - |> line([-0.7776386664456383, 0.7602780485384968], %) - |> line([0.5439379760788592, 0.8449177589350552], %) - |> line([-0.13036646025917076, 0.012051713627069693], %) - |> line([-0.1656465612645519, -0.20775229173765486], %) - |> line([-0.0962723255929061, -0.05417797659066137], %) - |> line([0.902108945498191, 0.3958978534964961], %) - |> line([0.27997950083139167, -0.17778188444008958], %) - |> line([0.5235806061589545, 0.694318985642328], %) - |> line([0.39140760219992154, -0.7839795272576484], %) - |> line([0.8414243527073519, 0.5395591528940082], %) - |> line([0.6137667704875602, 0.22119647516722085], %) - |> line([0.8830488380766681, 0.6996724408425232], %) - |> line([-0.41290485754343953, -0.4152647361760933], %) - |> line([0.5169538755575687, -0.9085567867302617], %) - |> line([-0.6716353749059765, -0.9605576808879026], %) - |> line([0.010280170930300203, -0.37344123662342166], %) - |> line([-0.3670208139314082, 0.21201331909674526], %) - |> line([-0.4707511307971115, 0.4905279615419764], %) - |> line([-0.8328324229085962, 0.4677492878818803], %) - |> line([-0.8111463382182231, -0.41814807547140576], %) - |> line([0.03807684940941125, 0.25664826686353326], %) - |> line([0.23950083339596384, 0.43693196301855575], %) - |> line([-0.16279444820904887, 0.8064475707664818], %) - |> line([-0.08972872009232558, -0.08887625823751266], %) - |> line([0.9203433427102556, -0.17343459369697545], %) - |> line([0.0017496234414517975, -0.5178508316168335], %) - |> line([0.6206263405732759, -0.8733399468665124], %) - |> line([-0.7776386664456383, 0.7602780485384968], %) - |> line([0.5439379760788592, 0.8449177589350552], %) - |> line([-0.13036646025917076, 0.012051713627069693], %) - |> line([-0.1656465612645519, -0.20775229173765486], %) - |> line([-0.0962723255929061, -0.05417797659066137], %) - |> line([0.902108945498191, 0.3958978534964961], %) - |> line([0.27997950083139167, -0.17778188444008958], %) - |> line([0.5235806061589545, 0.694318985642328], %) - |> line([0.39140760219992154, -0.7839795272576484], %) - |> line([0.8414243527073519, 0.5395591528940082], %) - |> line([0.6137667704875602, 0.22119647516722085], %) - |> line([0.8830488380766681, 0.6996724408425232], %) - |> line([-0.41290485754343953, -0.4152647361760933], %) - |> line([0.5169538755575687, -0.9085567867302617], %) - |> line([-0.6716353749059765, -0.9605576808879026], %) - |> line([0.010280170930300203, -0.37344123662342166], %) - |> line([0.10357375682791004, -0.42294321030821425], %) - |> line([0.4520311575096987, -0.11232675307600548], %) - |> line([-0.8821185914380845, -0.7155147434939819], %) - |> line([0.9195487101690416, 0.2691627465297364], %) - |> line([0.7098978191546745, 0.11710004169385968], %) - |> line([-0.37876368560819995, 0.7106729314759084], %) - |> line([-0.29728126898353335, -0.06649734568328003], %) - |> line([0.22965781558352072, -0.7601866432836641], %) - |> line([-0.6356501074317229, 0.19458425399338064], %) - |> line([0.5721251777404546, 0.2888584097921527], %) - |> line([-0.9580409549552311, -0.02243818192078395], %) - |> line([0.3299184618602866, -0.8353726942369875], %) - |> line([0.7434639386755209, -0.7919648864138378], %) - |> line([0.9935751011164615, 0.9042566468497608], %) - |> line([-0.5035812884687294, 0.5150967434989442], %) - |> line([0.5526227215900215, 0.7612604137272441], %) - |> line([0.8593271349126876, 0.08414894953725849], %) - |> line([-0.8181049219192864, -0.903548131323352], %) - |> line([0.3165782044458305, -0.24189274252014914], %) - |> line([-0.44390956414045135, -0.25912591535126905], %) - |> line([-0.6605165911891009, -0.40355115288839194], %) - |> line([-0.7170489950180006, 0.23454356079651384], %) - |> line([-0.2568187045379722, -0.45031188717601367], %) - |> line([0.6751951211858687, -0.9709424233465593], %) - |> line([-0.5689619842972184, 0.5918969913790362], %) - |> line([-0.8328324229085962, 0.4677492878818803], %) - |> line([-0.8111463382182231, -0.41814807547140576], %) - |> line([0.03807684940941125, 0.25664826686353326], %) - |> line([0.23950083339596384, 0.43693196301855575], %) - |> line([-0.16279444820904887, 0.8064475707664818], %) - |> line([-0.08972872009232558, -0.08887625823751266], %) - |> line([0.9203433427102556, -0.17343459369697545], %) - |> line([0.0017496234414517975, -0.5178508316168335], %) - |> line([0.6206263405732759, -0.8733399468665124], %) - |> line([-0.7776386664456383, 0.7602780485384968], %) - |> line([0.5439379760788592, 0.8449177589350552], %) - |> line([-0.13036646025917076, 0.012051713627069693], %) - |> line([-0.1656465612645519, -0.20775229173765486], %) - |> line([-0.0962723255929061, -0.05417797659066137], %) - |> line([0.902108945498191, 0.3958978534964961], %) - |> line([0.27997950083139167, -0.17778188444008958], %) - |> line([0.5235806061589545, 0.694318985642328], %) - |> line([0.39140760219992154, -0.7839795272576484], %) - |> line([0.8414243527073519, 0.5395591528940082], %) - |> line([0.6137667704875602, 0.22119647516722085], %) - |> line([0.8830488380766681, 0.6996724408425232], %) - |> line([-0.41290485754343953, -0.4152647361760933], %) - |> line([0.5169538755575687, -0.9085567867302617], %) - |> line([0.6751951211858687, -0.9709424233465593], %) - |> line([-0.5689619842972184, 0.5918969913790362], %) - |> line([0.9464450621708211, -0.2684908127803667], %) - |> line([0.5241732366617591, 0.9011437416408563], %) - |> line([-0.14255393713960607, -0.5194262624564814], %) - |> line([-0.4287123231350338, -0.4223564528725028], %) - |> line([-0.09316367294024519, -0.9063127021008246], %) - |> line([-0.2767766535558669, 0.6816248114129131], %) - |> line([0.9796762495562534, -0.0822145668330625], %) - |> line([-0.8666513070867441, -0.301053160242023], %) - |> line([0.537415656028112, 0.020272692875002774], %) - |> line([0.9332396256457531, -0.6228175690649898], %) - |> line([0.18052415837320734, -0.36894384647296197], %) - |> line([0.5384372634075449, 0.2377565050887107], %) - |> line([0.39043436929278874, 0.14273182483160451], %) - |> line([0.09782890412897283, 0.9907667536909659], %) - |> line([0.5286610085921146, -0.7924508308419256], %) - |> line([0.3789978184503342, 0.12396120576838676], %) - |> line([-0.9484912744890612, 0.6729649846476855], %) - |> line([0.7451758753425153, -0.21318737562458967], %) - |> line([0.1873200727251887, -0.15961374297992448], %) - |> line([-0.05729464924537564, -0.5436345558508746], %) - |> line([-0.09582414374469184, -0.7533839681212353], %) - |> line([-0.17254116580051848, -0.7669113400341137], %) - |> line([0.8944730032887609, 0.6093318694741408], %) - |> line([-0.3670208139314082, 0.21201331909674526], %) - |> line([-0.4707511307971115, 0.4905279615419764], %) - |> line([-0.8328324229085962, 0.4677492878818803], %) - |> line([-0.8111463382182231, -0.41814807547140576], %) - |> line([0.03807684940941125, 0.25664826686353326], %) - |> line([0.23950083339596384, 0.43693196301855575], %) - |> line([-0.16279444820904887, 0.8064475707664818], %) - |> line([-0.08972872009232558, -0.08887625823751266], %) - |> line([0.9203433427102556, -0.17343459369697545], %) - |> line([0.0017496234414517975, -0.5178508316168335], %) - |> line([0.6206263405732759, -0.8733399468665124], %) - |> line([-0.7776386664456383, 0.7602780485384968], %) - |> line([0.5439379760788592, 0.8449177589350552], %) - |> line([-0.13036646025917076, 0.012051713627069693], %) - |> line([-0.1656465612645519, -0.20775229173765486], %) - |> line([-0.0962723255929061, -0.05417797659066137], %) - |> line([0.902108945498191, 0.3958978534964961], %) - |> line([0.27997950083139167, -0.17778188444008958], %) - |> line([0.5235806061589545, 0.694318985642328], %) - |> line([0.39140760219992154, -0.7839795272576484], %) - |> line([0.8414243527073519, 0.5395591528940082], %) - |> line([0.6137667704875602, 0.22119647516722085], %) - |> line([0.8830488380766681, 0.6996724408425232], %) - |> line([-0.41290485754343953, -0.4152647361760933], %) - |> line([0.5169538755575687, -0.9085567867302617], %) - |> line([-0.6716353749059765, -0.9605576808879026], %) - |> line([0.010280170930300203, -0.37344123662342166], %) - |> line([0.10357375682791004, -0.42294321030821425], %) - |> line([0.4520311575096987, -0.11232675307600548], %) - |> line([-0.8821185914380845, -0.7155147434939819], %) - |> line([0.9195487101690416, 0.2691627465297364], %) - |> line([0.7098978191546745, 0.11710004169385968], %) - |> line([-0.37876368560819995, 0.7106729314759084], %) - |> line([-0.29728126898353335, -0.06649734568328003], %) - |> line([0.22965781558352072, -0.7601866432836641], %) - |> line([-0.6356501074317229, 0.19458425399338064], %) - |> line([0.5721251777404546, 0.2888584097921527], %) - |> line([-0.9580409549552311, -0.02243818192078395], %) - |> line([0.3299184618602866, -0.8353726942369875], %) - |> line([0.7434639386755209, -0.7919648864138378], %) - |> line([0.9935751011164615, 0.9042566468497608], %) - |> line([-0.5035812884687294, 0.5150967434989442], %) - |> line([0.5526227215900215, 0.7612604137272441], %) - |> line([0.8593271349126876, 0.08414894953725849], %) - |> line([-0.8181049219192864, -0.903548131323352], %) - |> line([0.3165782044458305, -0.24189274252014914], %) - |> line([-0.44390956414045135, -0.25912591535126905], %) - |> line([-0.6605165911891009, -0.40355115288839194], %) - |> line([-0.7170489950180006, 0.23454356079651384], %) - |> line([-0.2568187045379722, -0.45031188717601367], %) - |> line([0.6751951211858687, -0.9709424233465593], %) - |> line([-0.5689619842972184, 0.5918969913790362], %) - |> line([-0.8328324229085962, 0.4677492878818803], %) - |> line([-0.8111463382182231, -0.41814807547140576], %) - |> line([0.03807684940941125, 0.25664826686353326], %) - |> line([0.23950083339596384, 0.43693196301855575], %) - |> line([-0.16279444820904887, 0.8064475707664818], %) - |> line([-0.08972872009232558, -0.08887625823751266], %) - |> line([0.9203433427102556, -0.17343459369697545], %) - |> line([0.0017496234414517975, -0.5178508316168335], %) - |> line([0.6206263405732759, -0.8733399468665124], %) - |> line([-0.7776386664456383, 0.7602780485384968], %) - |> line([0.5439379760788592, 0.8449177589350552], %) - |> line([-0.13036646025917076, 0.012051713627069693], %) - |> line([-0.1656465612645519, -0.20775229173765486], %) - |> line([-0.0962723255929061, -0.05417797659066137], %) - |> line([0.902108945498191, 0.3958978534964961], %) - |> line([0.27997950083139167, -0.17778188444008958], %) - |> line([0.5235806061589545, 0.694318985642328], %) - |> line([0.39140760219992154, -0.7839795272576484], %) - |> line([0.8414243527073519, 0.5395591528940082], %) - |> line([0.6137667704875602, 0.22119647516722085], %) - |> line([0.8830488380766681, 0.6996724408425232], %) - |> line([-0.3670208139314082, 0.21201331909674526], %) - |> line([-0.4707511307971115, 0.4905279615419764], %) - |> line([-0.8328324229085962, 0.4677492878818803], %) - |> line([-0.8111463382182231, -0.41814807547140576], %) - |> line([0.03807684940941125, 0.25664826686353326], %) - |> line([0.23950083339596384, 0.43693196301855575], %) - |> line([-0.16279444820904887, 0.8064475707664818], %) - |> line([-0.08972872009232558, -0.08887625823751266], %) - |> line([0.9203433427102556, -0.17343459369697545], %) - |> line([0.0017496234414517975, -0.5178508316168335], %) - |> line([0.6206263405732759, -0.8733399468665124], %) - |> line([-0.7776386664456383, 0.7602780485384968], %) - |> line([0.5439379760788592, 0.8449177589350552], %) - |> line([-0.13036646025917076, 0.012051713627069693], %) - |> line([-0.1656465612645519, -0.20775229173765486], %) - |> line([-0.0962723255929061, -0.05417797659066137], %) - |> line([0.902108945498191, 0.3958978534964961], %) - |> line([0.27997950083139167, -0.17778188444008958], %) - |> line([0.5235806061589545, 0.694318985642328], %) - |> line([0.39140760219992154, -0.7839795272576484], %) - |> line([0.8414243527073519, 0.5395591528940082], %) - |> line([0.6137667704875602, 0.22119647516722085], %) - |> line([0.8830488380766681, 0.6996724408425232], %) - |> line([-0.41290485754343953, -0.4152647361760933], %) - |> line([0.5169538755575687, -0.9085567867302617], %) - |> line([-0.6716353749059765, -0.9605576808879026], %) - |> line([0.010280170930300203, -0.37344123662342166], %) - |> line([0.10357375682791004, -0.42294321030821425], %) - |> line([0.4520311575096987, -0.11232675307600548], %) - |> line([-0.8821185914380845, -0.7155147434939819], %) - |> line([0.9195487101690416, 0.2691627465297364], %) - |> line([0.7098978191546745, 0.11710004169385968], %) - |> line([-0.37876368560819995, 0.7106729314759084], %) - |> line([-0.29728126898353335, -0.06649734568328003], %) - |> line([0.22965781558352072, -0.7601866432836641], %) - |> line([-0.6356501074317229, 0.19458425399338064], %) - |> line([0.5721251777404546, 0.2888584097921527], %) - |> line([-0.9580409549552311, -0.02243818192078395], %) - |> line([0.3299184618602866, -0.8353726942369875], %) - |> line([0.7434639386755209, -0.7919648864138378], %) - |> line([0.9935751011164615, 0.9042566468497608], %) - |> line([-0.5035812884687294, 0.5150967434989442], %) - |> line([0.5526227215900215, 0.7612604137272441], %) - |> line([0.8593271349126876, 0.08414894953725849], %) - |> line([-0.8181049219192864, -0.903548131323352], %) - |> line([0.3165782044458305, -0.24189274252014914], %) - |> line([-0.44390956414045135, -0.25912591535126905], %) - |> line([-0.6605165911891009, -0.40355115288839194], %) - |> line([-0.7170489950180006, 0.23454356079651384], %) - |> line([-0.2568187045379722, -0.45031188717601367], %) - |> line([0.6751951211858687, -0.9709424233465593], %) - |> line([-0.5689619842972184, 0.5918969913790362], %) - |> line([-0.8328324229085962, 0.4677492878818803], %) - |> line([-0.8111463382182231, -0.41814807547140576], %) - |> line([0.03807684940941125, 0.25664826686353326], %) - |> line([0.23950083339596384, 0.43693196301855575], %) - |> line([-0.16279444820904887, 0.8064475707664818], %) - |> line([-0.08972872009232558, -0.08887625823751266], %) - |> line([0.9203433427102556, -0.17343459369697545], %) - |> line([0.0017496234414517975, -0.5178508316168335], %) - |> line([0.6206263405732759, -0.8733399468665124], %) - |> line([-0.7776386664456383, 0.7602780485384968], %) - |> line([0.5439379760788592, 0.8449177589350552], %) - |> line([-0.13036646025917076, 0.012051713627069693], %) - |> line([-0.1656465612645519, -0.20775229173765486], %) - |> line([-0.0962723255929061, -0.05417797659066137], %) - |> line([0.902108945498191, 0.3958978534964961], %) - |> line([0.27997950083139167, -0.17778188444008958], %) - |> line([0.5235806061589545, 0.694318985642328], %) - |> line([0.39140760219992154, -0.7839795272576484], %) - |> line([0.8414243527073519, 0.5395591528940082], %) - |> line([0.6137667704875602, 0.22119647516722085], %) - |> line([-0.09582414374469184, -0.7533839681212353], %) - |> line([-0.17254116580051848, -0.7669113400341137], %) - |> line([0.8944730032887609, 0.6093318694741408], %) - |> line([-0.41290485754343953, -0.4152647361760933], %) - |> line([0.5169538755575687, -0.9085567867302617], %) - |> line([0.6751951211858687, -0.9709424233465593], %) - |> line([-0.5689619842972184, 0.5918969913790362], %) - |> line([0.9464450621708211, -0.2684908127803667], %) - |> line([0.5241732366617591, 0.9011437416408563], %) - |> line([-0.14255393713960607, -0.5194262624564814], %) - |> line([-0.4287123231350338, -0.4223564528725028], %) - |> line([-0.09316367294024519, -0.9063127021008246], %) - |> line([-0.2767766535558669, 0.6816248114129131], %) - |> line([0.9796762495562534, -0.0822145668330625], %) - |> line([-0.8666513070867441, -0.301053160242023], %) - |> line([0.537415656028112, 0.020272692875002774], %) - |> line([0.9332396256457531, -0.6228175690649898], %) - |> line([0.18052415837320734, -0.36894384647296197], %) - |> line([0.5384372634075449, 0.2377565050887107], %) - |> line([0.39043436929278874, 0.14273182483160451], %) - |> line([0.09782890412897283, 0.9907667536909659], %) - |> line([0.5286610085921146, -0.7924508308419256], %) - |> line([0.3789978184503342, 0.12396120576838676], %) - |> line([-0.9484912744890612, 0.6729649846476855], %) - |> line([0.7451758753425153, -0.21318737562458967], %) - |> line([0.1873200727251887, -0.15961374297992448], %) - |> line([-0.05729464924537564, -0.5436345558508746], %) - |> line([-0.09582414374469184, -0.7533839681212353], %) - |> line([-0.17254116580051848, -0.7669113400341137], %) - |> line([0.8944730032887609, 0.6093318694741408], %) - |> line([-0.6238548626325471, 0.4053626746020169], %) - |> line([0.1379445992766417, -0.47871087958516045], %) - |> line([-0.9516767113283946, 0.8619900618578948], %) - |> line([0.9398732950992088, 0.6326239915683629], %) - |> line([-0.8631974445502164, 0.016153555523963137], %) - |> line([0.19167797120152907, -0.4916414381703984], %) - |> line([-0.8644261221501586, -0.11434763886359756], %) - |> line([-0.029081958413378572, -0.5214138808318329], %) - |> line([-0.8713091851579695, 0.7866284950967315], %) - |> line([0.884342023093545, -0.1825407002568431], %) - |> line([-0.6978385295364686, 0.0440574328736949], %) - |> line([-0.48055049324331556, -0.028546347149214002], %) - |> line([0.41283517382864776, -0.44938038251347323], %) - |> line([0.7911399832501751, 0.893446368526005], %) - |> line([0.6507434699009087, -0.6890023920962012], %) - |> line([0.10489019777253028, -0.5467450997193952], %) - |> line([-0.5760905289992633, -0.2639900702114173], %) - |> line([0.39828861790105297, 0.8036624129416385], %) - |> line([-0.673848991328553, -0.918443329270668], %) - |> line([-0.8599152936179257, -0.9499371022680787], %) - |> line([0.6285243831393765, -0.5186557636566307], %) - |> line([0.3222412784832269, 0.24621192679727177], %) - |> line([0.19754357911311016, -0.7529246632397206], %) - |> line([-0.43181570545865555, 0.18945437402201537], %) - |> line([0.8714511090241797, -0.7215844196844685], %) - |> line([-0.3670208139314082, 0.21201331909674526], %) - |> line([-0.4707511307971115, 0.4905279615419764], %) - |> line([-0.8328324229085962, 0.4677492878818803], %) - |> line([-0.8111463382182231, -0.41814807547140576], %) - |> line([0.03807684940941125, 0.25664826686353326], %) - |> line([0.23950083339596384, 0.43693196301855575], %) - |> line([-0.16279444820904887, 0.8064475707664818], %) - |> line([-0.08972872009232558, -0.08887625823751266], %) - |> line([0.9203433427102556, -0.17343459369697545], %) - |> line([0.0017496234414517975, -0.5178508316168335], %) - |> line([0.6206263405732759, -0.8733399468665124], %) - |> line([-0.7776386664456383, 0.7602780485384968], %) - |> line([0.5439379760788592, 0.8449177589350552], %) - |> line([-0.13036646025917076, 0.012051713627069693], %) - |> line([-0.1656465612645519, -0.20775229173765486], %) - |> line([-0.0962723255929061, -0.05417797659066137], %) - |> line([0.902108945498191, 0.3958978534964961], %) - |> line([0.27997950083139167, -0.17778188444008958], %) - |> line([0.5235806061589545, 0.694318985642328], %) - |> line([0.39140760219992154, -0.7839795272576484], %) - |> line([0.8414243527073519, 0.5395591528940082], %) - |> line([0.6137667704875602, 0.22119647516722085], %) - |> line([0.8830488380766681, 0.6996724408425232], %) - |> line([-0.41290485754343953, -0.4152647361760933], %) - |> line([0.5169538755575687, -0.9085567867302617], %) - |> line([-0.6716353749059765, -0.9605576808879026], %) - |> line([0.010280170930300203, -0.37344123662342166], %) - |> line([0.10357375682791004, -0.42294321030821425], %) - |> line([0.4520311575096987, -0.11232675307600548], %) - |> line([-0.8821185914380845, -0.7155147434939819], %) - |> line([0.9195487101690416, 0.2691627465297364], %) - |> line([0.7098978191546745, 0.11710004169385968], %) - |> line([-0.37876368560819995, 0.7106729314759084], %) - |> line([-0.29728126898353335, -0.06649734568328003], %) - |> line([0.22965781558352072, -0.7601866432836641], %) - |> line([-0.6356501074317229, 0.19458425399338064], %) - |> line([0.5721251777404546, 0.2888584097921527], %) - |> line([-0.9580409549552311, -0.02243818192078395], %) - |> line([0.3299184618602866, -0.8353726942369875], %) - |> line([0.7434639386755209, -0.7919648864138378], %) - |> line([0.9935751011164615, 0.9042566468497608], %) - |> line([-0.5035812884687294, 0.5150967434989442], %) - |> line([0.5526227215900215, 0.7612604137272441], %) - |> line([0.8593271349126876, 0.08414894953725849], %) - |> line([-0.8181049219192864, -0.903548131323352], %) - |> line([0.3165782044458305, -0.24189274252014914], %) - |> line([-0.44390956414045135, -0.25912591535126905], %) - |> line([-0.6605165911891009, -0.40355115288839194], %) - |> line([-0.7170489950180006, 0.23454356079651384], %) - |> line([-0.2568187045379722, -0.45031188717601367], %) - |> line([0.6751951211858687, -0.9709424233465593], %) - |> line([-0.5689619842972184, 0.5918969913790362], %) - |> line([-0.8328324229085962, 0.4677492878818803], %) - |> line([-0.8111463382182231, -0.41814807547140576], %) - |> line([0.03807684940941125, 0.25664826686353326], %) - |> line([0.23950083339596384, 0.43693196301855575], %) - |> line([-0.16279444820904887, 0.8064475707664818], %) - |> line([-0.08972872009232558, -0.08887625823751266], %) - |> line([0.9203433427102556, -0.17343459369697545], %) - |> line([0.0017496234414517975, -0.5178508316168335], %) - |> line([0.6206263405732759, -0.8733399468665124], %) - |> line([-0.7776386664456383, 0.7602780485384968], %) - |> line([0.5439379760788592, 0.8449177589350552], %) - |> line([-0.13036646025917076, 0.012051713627069693], %) - |> line([-0.1656465612645519, -0.20775229173765486], %) - |> line([-0.0962723255929061, -0.05417797659066137], %) - |> line([0.902108945498191, 0.3958978534964961], %) - |> line([0.27997950083139167, -0.17778188444008958], %) - |> line([0.5235806061589545, 0.694318985642328], %) - |> line([0.39140760219992154, -0.7839795272576484], %) - |> line([0.8414243527073519, 0.5395591528940082], %) - |> line([0.6137667704875602, 0.22119647516722085], %) - |> line([0.8830488380766681, 0.6996724408425232], %) - |> line([-0.41290485754343953, -0.4152647361760933], %) - |> line([0.5169538755575687, -0.9085567867302617], %) - |> line([0.6751951211858687, -0.9709424233465593], %) - |> line([-0.5689619842972184, 0.5918969913790362], %) - |> line([0.9464450621708211, -0.2684908127803667], %) - |> line([0.5241732366617591, 0.9011437416408563], %) - |> line([-0.14255393713960607, -0.5194262624564814], %) - |> line([-0.4287123231350338, -0.4223564528725028], %) - |> line([-0.09316367294024519, -0.9063127021008246], %) - |> line([-0.2767766535558669, 0.6816248114129131], %) - |> line([0.9796762495562534, -0.0822145668330625], %) - |> line([-0.8666513070867441, -0.301053160242023], %) - |> line([0.537415656028112, 0.020272692875002774], %) - |> line([0.9332396256457531, -0.6228175690649898], %) - |> line([0.18052415837320734, -0.36894384647296197], %) - |> line([0.5384372634075449, 0.2377565050887107], %) - |> line([0.39043436929278874, 0.14273182483160451], %) - |> line([0.09782890412897283, 0.9907667536909659], %) - |> line([0.5286610085921146, -0.7924508308419256], %) - |> line([0.3789978184503342, 0.12396120576838676], %) - |> line([-0.9484912744890612, 0.6729649846476855], %) - |> line([0.7451758753425153, -0.21318737562458967], %) - |> line([0.1873200727251887, -0.15961374297992448], %) - |> line([-0.05729464924537564, -0.5436345558508746], %) - |> line([-0.09582414374469184, -0.7533839681212353], %) - |> line([-0.17254116580051848, -0.7669113400341137], %) - |> line([0.8944730032887609, 0.6093318694741408], %) - |> line([-0.3670208139314082, 0.21201331909674526], %) - |> line([-0.4707511307971115, 0.4905279615419764], %) - |> line([-0.8328324229085962, 0.4677492878818803], %) - |> line([-0.8111463382182231, -0.41814807547140576], %) - |> line([0.03807684940941125, 0.25664826686353326], %) - |> line([0.23950083339596384, 0.43693196301855575], %) - |> line([-0.16279444820904887, 0.8064475707664818], %) - |> line([-0.08972872009232558, -0.08887625823751266], %) - |> line([0.9203433427102556, -0.17343459369697545], %) - |> line([0.0017496234414517975, -0.5178508316168335], %) - |> line([0.6206263405732759, -0.8733399468665124], %) - |> line([-0.7776386664456383, 0.7602780485384968], %) - |> line([0.5439379760788592, 0.8449177589350552], %) - |> line([-0.13036646025917076, 0.012051713627069693], %) - |> line([-0.1656465612645519, -0.20775229173765486], %) - |> line([-0.0962723255929061, -0.05417797659066137], %) - |> line([0.902108945498191, 0.3958978534964961], %) - |> line([0.27997950083139167, -0.17778188444008958], %) - |> line([0.5235806061589545, 0.694318985642328], %) - |> line([0.39140760219992154, -0.7839795272576484], %) - |> line([0.8414243527073519, 0.5395591528940082], %) - |> line([0.6137667704875602, 0.22119647516722085], %) - |> line([0.8830488380766681, 0.6996724408425232], %) - |> line([-0.41290485754343953, -0.4152647361760933], %) - |> line([0.5169538755575687, -0.9085567867302617], %) - |> line([-0.6716353749059765, -0.9605576808879026], %) - |> line([0.010280170930300203, -0.37344123662342166], %) - |> line([0.10357375682791004, -0.42294321030821425], %) - |> line([0.4520311575096987, -0.11232675307600548], %) - |> line([-0.8821185914380845, -0.7155147434939819], %) - |> line([0.9195487101690416, 0.2691627465297364], %) - |> line([0.7098978191546745, 0.11710004169385968], %) - |> line([-0.37876368560819995, 0.7106729314759084], %) - |> line([-0.29728126898353335, -0.06649734568328003], %) - |> line([0.22965781558352072, -0.7601866432836641], %) - |> line([-0.6356501074317229, 0.19458425399338064], %) - |> line([0.5721251777404546, 0.2888584097921527], %) - |> line([-0.9580409549552311, -0.02243818192078395], %) - |> line([0.3299184618602866, -0.8353726942369875], %) - |> line([0.7434639386755209, -0.7919648864138378], %) - |> line([0.9935751011164615, 0.9042566468497608], %) - |> line([-0.5035812884687294, 0.5150967434989442], %) - |> line([0.5526227215900215, 0.7612604137272441], %) - |> line([0.8593271349126876, 0.08414894953725849], %) - |> line([-0.8181049219192864, -0.903548131323352], %) - |> line([0.3165782044458305, -0.24189274252014914], %) - |> line([-0.44390956414045135, -0.25912591535126905], %) - |> line([-0.6605165911891009, -0.40355115288839194], %) - |> line([-0.7170489950180006, 0.23454356079651384], %) - |> line([-0.2568187045379722, -0.45031188717601367], %) - |> line([0.6751951211858687, -0.9709424233465593], %) - |> line([-0.5689619842972184, 0.5918969913790362], %) - |> line([-0.8328324229085962, 0.4677492878818803], %) - |> line([-0.8111463382182231, -0.41814807547140576], %) - |> line([0.03807684940941125, 0.25664826686353326], %) - |> line([0.23950083339596384, 0.43693196301855575], %) - |> line([-0.16279444820904887, 0.8064475707664818], %) - |> line([-0.08972872009232558, -0.08887625823751266], %) - |> line([0.9203433427102556, -0.17343459369697545], %) - |> line([0.0017496234414517975, -0.5178508316168335], %) - |> line([0.6206263405732759, -0.8733399468665124], %) - |> line([-0.7776386664456383, 0.7602780485384968], %) - |> line([0.5439379760788592, 0.8449177589350552], %) - |> line([-0.13036646025917076, 0.012051713627069693], %) - |> line([-0.1656465612645519, -0.20775229173765486], %) - |> line([-0.0962723255929061, -0.05417797659066137], %) - |> line([0.902108945498191, 0.3958978534964961], %) - |> line([0.27997950083139167, -0.17778188444008958], %) - |> line([0.5235806061589545, 0.694318985642328], %) - |> line([0.39140760219992154, -0.7839795272576484], %) - |> line([0.8414243527073519, 0.5395591528940082], %) - |> line([0.6137667704875602, 0.22119647516722085], %) - |> line([0.8830488380766681, 0.6996724408425232], %) - |> line([-0.3670208139314082, 0.21201331909674526], %) - |> line([-0.4707511307971115, 0.4905279615419764], %) - |> line([-0.8328324229085962, 0.4677492878818803], %) - |> line([-0.8111463382182231, -0.41814807547140576], %) - |> line([0.03807684940941125, 0.25664826686353326], %) - |> line([0.23950083339596384, 0.43693196301855575], %) - |> line([-0.16279444820904887, 0.8064475707664818], %) - |> line([-0.08972872009232558, -0.08887625823751266], %) - |> line([0.9203433427102556, -0.17343459369697545], %) - |> line([0.0017496234414517975, -0.5178508316168335], %) - |> line([0.6206263405732759, -0.8733399468665124], %) - |> line([-0.7776386664456383, 0.7602780485384968], %) - |> line([0.5439379760788592, 0.8449177589350552], %) - |> line([-0.13036646025917076, 0.012051713627069693], %) - |> line([-0.1656465612645519, -0.20775229173765486], %) - |> line([-0.0962723255929061, -0.05417797659066137], %) - |> line([0.902108945498191, 0.3958978534964961], %) - |> line([0.27997950083139167, -0.17778188444008958], %) - |> line([0.5235806061589545, 0.694318985642328], %) - |> line([0.39140760219992154, -0.7839795272576484], %) - |> line([0.8414243527073519, 0.5395591528940082], %) - |> line([0.6137667704875602, 0.22119647516722085], %) - |> line([0.8830488380766681, 0.6996724408425232], %) - |> line([-0.41290485754343953, -0.4152647361760933], %) - |> line([0.5169538755575687, -0.9085567867302617], %) - |> line([-0.6716353749059765, -0.9605576808879026], %) - |> line([0.010280170930300203, -0.37344123662342166], %) - |> line([-0.3670208139314082, 0.21201331909674526], %) - |> line([-0.4707511307971115, 0.4905279615419764], %) - |> line([-0.8328324229085962, 0.4677492878818803], %) - |> line([-0.8111463382182231, -0.41814807547140576], %) - |> line([0.03807684940941125, 0.25664826686353326], %) - |> line([0.23950083339596384, 0.43693196301855575], %) - |> line([-0.16279444820904887, 0.8064475707664818], %) - |> line([-0.08972872009232558, -0.08887625823751266], %) - |> line([0.9203433427102556, -0.17343459369697545], %) - |> line([0.0017496234414517975, -0.5178508316168335], %) - |> line([0.6206263405732759, -0.8733399468665124], %) - |> line([-0.7776386664456383, 0.7602780485384968], %) - |> line([0.5439379760788592, 0.8449177589350552], %) - |> line([-0.13036646025917076, 0.012051713627069693], %) - |> line([-0.1656465612645519, -0.20775229173765486], %) - |> line([-0.0962723255929061, -0.05417797659066137], %) - |> line([0.902108945498191, 0.3958978534964961], %) - |> line([0.27997950083139167, -0.17778188444008958], %) - |> line([0.5235806061589545, 0.694318985642328], %) - |> line([0.39140760219992154, -0.7839795272576484], %) - |> line([0.8414243527073519, 0.5395591528940082], %) - |> line([0.6137667704875602, 0.22119647516722085], %) - |> line([0.8830488380766681, 0.6996724408425232], %) - |> line([-0.41290485754343953, -0.4152647361760933], %) - |> line([0.5169538755575687, -0.9085567867302617], %) - |> line([-0.6716353749059765, -0.9605576808879026], %) - |> line([0.010280170930300203, -0.37344123662342166], %) - |> line([0.10357375682791004, -0.42294321030821425], %) - |> line([0.4520311575096987, -0.11232675307600548], %) - |> line([-0.8821185914380845, -0.7155147434939819], %) - |> line([0.9195487101690416, 0.2691627465297364], %) - |> line([0.7098978191546745, 0.11710004169385968], %) - |> line([-0.37876368560819995, 0.7106729314759084], %) - |> line([-0.29728126898353335, -0.06649734568328003], %) - |> line([0.22965781558352072, -0.7601866432836641], %) - |> line([-0.6356501074317229, 0.19458425399338064], %) - |> line([0.5721251777404546, 0.2888584097921527], %) - |> line([-0.9580409549552311, -0.02243818192078395], %) - |> line([0.3299184618602866, -0.8353726942369875], %) - |> line([0.7434639386755209, -0.7919648864138378], %) - |> line([0.9935751011164615, 0.9042566468497608], %) - |> line([-0.5035812884687294, 0.5150967434989442], %) - |> line([0.5526227215900215, 0.7612604137272441], %) - |> line([0.8593271349126876, 0.08414894953725849], %) - |> line([-0.8181049219192864, -0.903548131323352], %) - |> line([0.3165782044458305, -0.24189274252014914], %) - |> line([-0.44390956414045135, -0.25912591535126905], %) - |> line([-0.6605165911891009, -0.40355115288839194], %) - |> line([-0.7170489950180006, 0.23454356079651384], %) - |> line([-0.2568187045379722, -0.45031188717601367], %) - |> line([0.6751951211858687, -0.9709424233465593], %) - |> line([-0.5689619842972184, 0.5918969913790362], %) - |> line([-0.8328324229085962, 0.4677492878818803], %) - |> line([-0.8111463382182231, -0.41814807547140576], %) - |> line([0.03807684940941125, 0.25664826686353326], %) - |> line([0.23950083339596384, 0.43693196301855575], %) - |> line([-0.16279444820904887, 0.8064475707664818], %) - |> line([-0.08972872009232558, -0.08887625823751266], %) - |> line([0.9203433427102556, -0.17343459369697545], %) - |> line([0.0017496234414517975, -0.5178508316168335], %) - |> line([0.6206263405732759, -0.8733399468665124], %) - |> line([-0.7776386664456383, 0.7602780485384968], %) - |> line([0.5439379760788592, 0.8449177589350552], %) - |> line([-0.13036646025917076, 0.012051713627069693], %) - |> line([-0.1656465612645519, -0.20775229173765486], %) - |> line([-0.0962723255929061, -0.05417797659066137], %) - |> line([0.902108945498191, 0.3958978534964961], %) - |> line([0.27997950083139167, -0.17778188444008958], %) - |> line([0.5235806061589545, 0.694318985642328], %) - |> line([0.39140760219992154, -0.7839795272576484], %) - |> line([0.8414243527073519, 0.5395591528940082], %) - |> line([0.6137667704875602, 0.22119647516722085], %) - |> line([0.8830488380766681, 0.6996724408425232], %) - |> line([-0.41290485754343953, -0.4152647361760933], %) - |> line([0.5169538755575687, -0.9085567867302617], %) - |> line([0.6751951211858687, -0.9709424233465593], %) - |> line([-0.5689619842972184, 0.5918969913790362], %) - |> line([0.9464450621708211, -0.2684908127803667], %) - |> line([0.5241732366617591, 0.9011437416408563], %) - |> line([-0.14255393713960607, -0.5194262624564814], %) - |> line([-0.4287123231350338, -0.4223564528725028], %) - |> line([-0.09316367294024519, -0.9063127021008246], %) - |> line([-0.2767766535558669, 0.6816248114129131], %) - |> line([0.9796762495562534, -0.0822145668330625], %) - |> line([-0.8666513070867441, -0.301053160242023], %) - |> line([0.537415656028112, 0.020272692875002774], %) - |> line([0.9332396256457531, -0.6228175690649898], %) - |> line([0.18052415837320734, -0.36894384647296197], %) - |> line([0.5384372634075449, 0.2377565050887107], %) - |> line([0.39043436929278874, 0.14273182483160451], %) - |> line([0.09782890412897283, 0.9907667536909659], %) - |> line([0.5286610085921146, -0.7924508308419256], %) - |> line([0.3789978184503342, 0.12396120576838676], %) - |> line([-0.9484912744890612, 0.6729649846476855], %) - |> line([0.7451758753425153, -0.21318737562458967], %) - |> line([0.1873200727251887, -0.15961374297992448], %) - |> line([-0.05729464924537564, -0.5436345558508746], %) - |> line([-0.09582414374469184, -0.7533839681212353], %) - |> line([-0.17254116580051848, -0.7669113400341137], %) - |> line([0.8944730032887609, 0.6093318694741408], %) - |> line([-0.3670208139314082, 0.21201331909674526], %) - |> line([-0.4707511307971115, 0.4905279615419764], %) - |> line([-0.8328324229085962, 0.4677492878818803], %) - |> line([-0.8111463382182231, -0.41814807547140576], %) - |> line([0.03807684940941125, 0.25664826686353326], %) - |> line([0.23950083339596384, 0.43693196301855575], %) - |> line([-0.16279444820904887, 0.8064475707664818], %) - |> line([-0.08972872009232558, -0.08887625823751266], %) - |> line([0.9203433427102556, -0.17343459369697545], %) - |> line([0.0017496234414517975, -0.5178508316168335], %) - |> line([0.6206263405732759, -0.8733399468665124], %) - |> line([-0.7776386664456383, 0.7602780485384968], %) - |> line([0.5439379760788592, 0.8449177589350552], %) - |> line([-0.13036646025917076, 0.012051713627069693], %) - |> line([-0.1656465612645519, -0.20775229173765486], %) - |> line([-0.0962723255929061, -0.05417797659066137], %) - |> line([0.902108945498191, 0.3958978534964961], %) - |> line([0.27997950083139167, -0.17778188444008958], %) - |> line([0.5235806061589545, 0.694318985642328], %) - |> line([0.39140760219992154, -0.7839795272576484], %) - |> line([0.8414243527073519, 0.5395591528940082], %) - |> line([0.6137667704875602, 0.22119647516722085], %) - |> line([0.8830488380766681, 0.6996724408425232], %) - |> line([-0.41290485754343953, -0.4152647361760933], %) - |> line([0.5169538755575687, -0.9085567867302617], %) - |> line([-0.6716353749059765, -0.9605576808879026], %) - |> line([0.010280170930300203, -0.37344123662342166], %) - |> line([0.10357375682791004, -0.42294321030821425], %) - |> line([0.4520311575096987, -0.11232675307600548], %) - |> line([-0.8821185914380845, -0.7155147434939819], %) - |> line([0.9195487101690416, 0.2691627465297364], %) - |> line([0.7098978191546745, 0.11710004169385968], %) - |> line([-0.37876368560819995, 0.7106729314759084], %) - |> line([-0.29728126898353335, -0.06649734568328003], %) - |> line([0.22965781558352072, -0.7601866432836641], %) - |> line([-0.6356501074317229, 0.19458425399338064], %) - |> line([0.5721251777404546, 0.2888584097921527], %) - |> line([-0.9580409549552311, -0.02243818192078395], %) - |> line([0.3299184618602866, -0.8353726942369875], %) - |> line([0.7434639386755209, -0.7919648864138378], %) - |> line([0.9935751011164615, 0.9042566468497608], %) - |> line([-0.5035812884687294, 0.5150967434989442], %) - |> line([0.5526227215900215, 0.7612604137272441], %) - |> line([0.8593271349126876, 0.08414894953725849], %) - |> line([-0.8181049219192864, -0.903548131323352], %) - |> line([0.3165782044458305, -0.24189274252014914], %) - |> line([-0.44390956414045135, -0.25912591535126905], %) - |> line([-0.6605165911891009, -0.40355115288839194], %) - |> line([-0.7170489950180006, 0.23454356079651384], %) - |> line([-0.2568187045379722, -0.45031188717601367], %) - |> line([0.6751951211858687, -0.9709424233465593], %) - |> line([-0.5689619842972184, 0.5918969913790362], %) - |> line([-0.8328324229085962, 0.4677492878818803], %) - |> line([-0.8111463382182231, -0.41814807547140576], %) - |> line([0.03807684940941125, 0.25664826686353326], %) - |> line([0.23950083339596384, 0.43693196301855575], %) - |> line([-0.16279444820904887, 0.8064475707664818], %) - |> line([-0.08972872009232558, -0.08887625823751266], %) - |> line([0.9203433427102556, -0.17343459369697545], %) - |> line([0.0017496234414517975, -0.5178508316168335], %) - |> line([0.6206263405732759, -0.8733399468665124], %) - |> line([-0.7776386664456383, 0.7602780485384968], %) - |> line([0.5439379760788592, 0.8449177589350552], %) - |> line([-0.13036646025917076, 0.012051713627069693], %) - |> line([-0.1656465612645519, -0.20775229173765486], %) - |> line([-0.0962723255929061, -0.05417797659066137], %) - |> line([0.902108945498191, 0.3958978534964961], %) - |> line([0.27997950083139167, -0.17778188444008958], %) - |> line([0.5235806061589545, 0.694318985642328], %) - |> line([0.39140760219992154, -0.7839795272576484], %) - |> line([0.8414243527073519, 0.5395591528940082], %) - |> line([0.6137667704875602, 0.22119647516722085], %) - |> line([0.8830488380766681, 0.6996724408425232], %) - |> line([-0.3670208139314082, 0.21201331909674526], %) - |> line([-0.4707511307971115, 0.4905279615419764], %) - |> line([-0.8328324229085962, 0.4677492878818803], %) - |> line([-0.8111463382182231, -0.41814807547140576], %) - |> line([0.03807684940941125, 0.25664826686353326], %) - |> line([0.23950083339596384, 0.43693196301855575], %) - |> line([-0.16279444820904887, 0.8064475707664818], %) - |> line([-0.08972872009232558, -0.08887625823751266], %) - |> line([0.9203433427102556, -0.17343459369697545], %) - |> line([0.0017496234414517975, -0.5178508316168335], %) - |> line([0.6206263405732759, -0.8733399468665124], %) - |> line([-0.7776386664456383, 0.7602780485384968], %) - |> line([0.5439379760788592, 0.8449177589350552], %) - |> line([-0.13036646025917076, 0.012051713627069693], %) - |> line([-0.1656465612645519, -0.20775229173765486], %) - |> line([-0.0962723255929061, -0.05417797659066137], %) - |> line([0.902108945498191, 0.3958978534964961], %) - |> line([0.27997950083139167, -0.17778188444008958], %) - |> line([0.5235806061589545, 0.694318985642328], %) - |> line([0.39140760219992154, -0.7839795272576484], %) - |> line([0.8414243527073519, 0.5395591528940082], %) - |> line([0.6137667704875602, 0.22119647516722085], %) - |> line([0.8830488380766681, 0.6996724408425232], %) - |> line([-0.41290485754343953, -0.4152647361760933], %) - |> line([0.5169538755575687, -0.9085567867302617], %) - |> line([-0.6716353749059765, -0.9605576808879026], %) - |> line([0.010280170930300203, -0.37344123662342166], %) - |> line([0.10357375682791004, -0.42294321030821425], %) - |> line([0.4520311575096987, -0.11232675307600548], %) - |> line([-0.8821185914380845, -0.7155147434939819], %) - |> line([0.9195487101690416, 0.2691627465297364], %) - |> line([0.7098978191546745, 0.11710004169385968], %) - |> line([-0.37876368560819995, 0.7106729314759084], %) - |> line([-0.29728126898353335, -0.06649734568328003], %) - |> line([0.22965781558352072, -0.7601866432836641], %) - |> line([-0.6356501074317229, 0.19458425399338064], %) - |> line([0.5721251777404546, 0.2888584097921527], %) - |> line([-0.9580409549552311, -0.02243818192078395], %) - |> line([0.3299184618602866, -0.8353726942369875], %) - |> line([0.7434639386755209, -0.7919648864138378], %) - |> line([0.9935751011164615, 0.9042566468497608], %) - |> line([-0.5035812884687294, 0.5150967434989442], %) - |> line([0.5526227215900215, 0.7612604137272441], %) - |> line([0.8593271349126876, 0.08414894953725849], %) - |> line([-0.8181049219192864, -0.903548131323352], %) - |> line([0.3165782044458305, -0.24189274252014914], %) - |> line([-0.44390956414045135, -0.25912591535126905], %) - |> line([-0.6605165911891009, -0.40355115288839194], %) - |> line([-0.7170489950180006, 0.23454356079651384], %) - |> line([-0.2568187045379722, -0.45031188717601367], %) - |> line([0.6751951211858687, -0.9709424233465593], %) - |> line([-0.5689619842972184, 0.5918969913790362], %) - |> line([-0.8328324229085962, 0.4677492878818803], %) - |> line([-0.8111463382182231, -0.41814807547140576], %) - |> line([0.03807684940941125, 0.25664826686353326], %) - |> line([0.23950083339596384, 0.43693196301855575], %) - |> line([-0.16279444820904887, 0.8064475707664818], %) - |> line([-0.08972872009232558, -0.08887625823751266], %) - |> line([0.9203433427102556, -0.17343459369697545], %) - |> line([0.0017496234414517975, -0.5178508316168335], %) - |> line([0.6206263405732759, -0.8733399468665124], %) - |> line([-0.7776386664456383, 0.7602780485384968], %) - |> line([0.5439379760788592, 0.8449177589350552], %) - |> line([-0.13036646025917076, 0.012051713627069693], %) - |> line([-0.1656465612645519, -0.20775229173765486], %) - |> line([-0.0962723255929061, -0.05417797659066137], %) - |> line([0.902108945498191, 0.3958978534964961], %) - |> line([0.27997950083139167, -0.17778188444008958], %) - |> line([0.5235806061589545, 0.694318985642328], %) - |> line([0.39140760219992154, -0.7839795272576484], %) - |> line([0.8414243527073519, 0.5395591528940082], %) - |> line([0.6137667704875602, 0.22119647516722085], %) - |> line([-0.09582414374469184, -0.7533839681212353], %) - |> line([-0.17254116580051848, -0.7669113400341137], %) - |> line([0.8944730032887609, 0.6093318694741408], %) - |> line([-0.41290485754343953, -0.4152647361760933], %) - |> line([0.5169538755575687, -0.9085567867302617], %) - |> line([0.6751951211858687, -0.9709424233465593], %) - |> line([-0.5689619842972184, 0.5918969913790362], %) - |> line([0.9464450621708211, -0.2684908127803667], %) - |> line([0.5241732366617591, 0.9011437416408563], %) - |> line([-0.14255393713960607, -0.5194262624564814], %) - |> line([-0.4287123231350338, -0.4223564528725028], %) - |> line([-0.09316367294024519, -0.9063127021008246], %) - |> line([-0.2767766535558669, 0.6816248114129131], %) - |> line([0.9796762495562534, -0.0822145668330625], %) - |> line([-0.8666513070867441, -0.301053160242023], %) - |> line([0.537415656028112, 0.020272692875002774], %) - |> line([0.9332396256457531, -0.6228175690649898], %) - |> line([0.18052415837320734, -0.36894384647296197], %) - |> line([0.5384372634075449, 0.2377565050887107], %) - |> line([0.39043436929278874, 0.14273182483160451], %) - |> line([0.09782890412897283, 0.9907667536909659], %) - |> line([0.5286610085921146, -0.7924508308419256], %) - |> line([0.3789978184503342, 0.12396120576838676], %) - |> line([-0.9484912744890612, 0.6729649846476855], %) - |> line([0.7451758753425153, -0.21318737562458967], %) - |> line([0.1873200727251887, -0.15961374297992448], %) - |> line([-0.05729464924537564, -0.5436345558508746], %) - |> line([-0.09582414374469184, -0.7533839681212353], %) - |> line([-0.17254116580051848, -0.7669113400341137], %) - |> line([0.8944730032887609, 0.6093318694741408], %) - |> line([-0.6238548626325471, 0.4053626746020169], %) - |> line([0.1379445992766417, -0.47871087958516045], %) - |> line([-0.9516767113283946, 0.8619900618578948], %) - |> line([0.9398732950992088, 0.6326239915683629], %) - |> line([-0.8631974445502164, 0.016153555523963137], %) - |> line([0.19167797120152907, -0.4916414381703984], %) - |> line([-0.8644261221501586, -0.11434763886359756], %) - |> line([-0.029081958413378572, -0.5214138808318329], %) - |> line([-0.8713091851579695, 0.7866284950967315], %) - |> line([0.884342023093545, -0.1825407002568431], %) - |> line([-0.6978385295364686, 0.0440574328736949], %) - |> line([-0.48055049324331556, -0.028546347149214002], %) - |> line([0.41283517382864776, -0.44938038251347323], %) - |> line([0.7911399832501751, 0.893446368526005], %) - |> line([0.6507434699009087, -0.6890023920962012], %) - |> line([0.10489019777253028, -0.5467450997193952], %) - |> line([-0.5760905289992633, -0.2639900702114173], %) - |> line([0.39828861790105297, 0.8036624129416385], %) - |> line([-0.673848991328553, -0.918443329270668], %) - |> line([-0.8599152936179257, -0.9499371022680787], %) - |> line([0.6285243831393765, -0.5186557636566307], %) - |> line([0.3222412784832269, 0.24621192679727177], %) - |> line([0.19754357911311016, -0.7529246632397206], %) - |> line([-0.43181570545865555, 0.18945437402201537], %) - |> line([0.8714511090241797, -0.7215844196844685], %) - |> close(%) - |> extrude(5, %) + |> line(to = [-0.3670208139314082, 0.21201331909674526]) + |> line(to = [-0.4707511307971115, 0.4905279615419764]) + |> line(to = [-0.8328324229085962, 0.4677492878818803]) + |> line(to = [-0.8111463382182231, -0.41814807547140576]) + |> line(to = [0.03807684940941125, 0.25664826686353326]) + |> line(to = [0.23950083339596384, 0.43693196301855575]) + |> line(to = [-0.16279444820904887, 0.8064475707664818]) + |> line(to = [-0.08972872009232558, -0.08887625823751266]) + |> line(to = [0.9203433427102556, -0.17343459369697545]) + |> line(to = [0.0017496234414517975, -0.5178508316168335]) + |> line(to = [0.6206263405732759, -0.8733399468665124]) + |> line(to = [-0.7776386664456383, 0.7602780485384968]) + |> line(to = [0.5439379760788592, 0.8449177589350552]) + |> line(to = [-0.13036646025917076, 0.012051713627069693]) + |> line(to = [-0.1656465612645519, -0.20775229173765486]) + |> line(to = [-0.0962723255929061, -0.05417797659066137]) + |> line(to = [0.902108945498191, 0.3958978534964961]) + |> line(to = [0.27997950083139167, -0.17778188444008958]) + |> line(to = [0.5235806061589545, 0.694318985642328]) + |> line(to = [0.39140760219992154, -0.7839795272576484]) + |> line(to = [0.8414243527073519, 0.5395591528940082]) + |> line(to = [0.6137667704875602, 0.22119647516722085]) + |> line(to = [0.8830488380766681, 0.6996724408425232]) + |> line(to = [-0.41290485754343953, -0.4152647361760933]) + |> line(to = [0.5169538755575687, -0.9085567867302617]) + |> line(to = [-0.6716353749059765, -0.9605576808879026]) + |> line(to = [0.010280170930300203, -0.37344123662342166]) + |> line(to = [0.10357375682791004, -0.42294321030821425]) + |> line(to = [0.4520311575096987, -0.11232675307600548]) + |> line(to = [-0.8821185914380845, -0.7155147434939819]) + |> line(to = [0.9195487101690416, 0.2691627465297364]) + |> line(to = [0.7098978191546745, 0.11710004169385968]) + |> line(to = [-0.37876368560819995, 0.7106729314759084]) + |> line(to = [-0.29728126898353335, -0.06649734568328003]) + |> line(to = [0.22965781558352072, -0.7601866432836641]) + |> line(to = [-0.6356501074317229, 0.19458425399338064]) + |> line(to = [0.5721251777404546, 0.2888584097921527]) + |> line(to = [-0.9580409549552311, -0.02243818192078395]) + |> line(to = [0.3299184618602866, -0.8353726942369875]) + |> line(to = [0.7434639386755209, -0.7919648864138378]) + |> line(to = [0.9935751011164615, 0.9042566468497608]) + |> line(to = [-0.5035812884687294, 0.5150967434989442]) + |> line(to = [0.5526227215900215, 0.7612604137272441]) + |> line(to = [0.8593271349126876, 0.08414894953725849]) + |> line(to = [-0.8181049219192864, -0.903548131323352]) + |> line(to = [0.3165782044458305, -0.24189274252014914]) + |> line(to = [-0.44390956414045135, -0.25912591535126905]) + |> line(to = [-0.6605165911891009, -0.40355115288839194]) + |> line(to = [-0.7170489950180006, 0.23454356079651384]) + |> line(to = [-0.2568187045379722, -0.45031188717601367]) + |> line(to = [0.6751951211858687, -0.9709424233465593]) + |> line(to = [-0.5689619842972184, 0.5918969913790362]) + |> line(to = [-0.8328324229085962, 0.4677492878818803]) + |> line(to = [-0.8111463382182231, -0.41814807547140576]) + |> line(to = [0.03807684940941125, 0.25664826686353326]) + |> line(to = [0.23950083339596384, 0.43693196301855575]) + |> line(to = [-0.16279444820904887, 0.8064475707664818]) + |> line(to = [-0.08972872009232558, -0.08887625823751266]) + |> line(to = [0.9203433427102556, -0.17343459369697545]) + |> line(to = [0.0017496234414517975, -0.5178508316168335]) + |> line(to = [0.6206263405732759, -0.8733399468665124]) + |> line(to = [-0.7776386664456383, 0.7602780485384968]) + |> line(to = [0.5439379760788592, 0.8449177589350552]) + |> line(to = [-0.13036646025917076, 0.012051713627069693]) + |> line(to = [-0.1656465612645519, -0.20775229173765486]) + |> line(to = [-0.0962723255929061, -0.05417797659066137]) + |> line(to = [0.902108945498191, 0.3958978534964961]) + |> line(to = [0.27997950083139167, -0.17778188444008958]) + |> line(to = [0.5235806061589545, 0.694318985642328]) + |> line(to = [0.39140760219992154, -0.7839795272576484]) + |> line(to = [0.8414243527073519, 0.5395591528940082]) + |> line(to = [0.6137667704875602, 0.22119647516722085]) + |> line(to = [0.8830488380766681, 0.6996724408425232]) + |> line(to = [-0.41290485754343953, -0.4152647361760933]) + |> line(to = [0.5169538755575687, -0.9085567867302617]) + |> line(to = [0.6751951211858687, -0.9709424233465593]) + |> line(to = [-0.5689619842972184, 0.5918969913790362]) + |> line(to = [0.9464450621708211, -0.2684908127803667]) + |> line(to = [0.5241732366617591, 0.9011437416408563]) + |> line(to = [-0.14255393713960607, -0.5194262624564814]) + |> line(to = [-0.4287123231350338, -0.4223564528725028]) + |> line(to = [-0.09316367294024519, -0.9063127021008246]) + |> line(to = [-0.2767766535558669, 0.6816248114129131]) + |> line(to = [0.9796762495562534, -0.0822145668330625]) + |> line(to = [-0.8666513070867441, -0.301053160242023]) + |> line(to = [0.537415656028112, 0.020272692875002774]) + |> line(to = [0.9332396256457531, -0.6228175690649898]) + |> line(to = [0.18052415837320734, -0.36894384647296197]) + |> line(to = [0.5384372634075449, 0.2377565050887107]) + |> line(to = [0.39043436929278874, 0.14273182483160451]) + |> line(to = [0.09782890412897283, 0.9907667536909659]) + |> line(to = [0.5286610085921146, -0.7924508308419256]) + |> line(to = [0.3789978184503342, 0.12396120576838676]) + |> line(to = [-0.9484912744890612, 0.6729649846476855]) + |> line(to = [0.7451758753425153, -0.21318737562458967]) + |> line(to = [0.1873200727251887, -0.15961374297992448]) + |> line(to = [-0.05729464924537564, -0.5436345558508746]) + |> line(to = [-0.09582414374469184, -0.7533839681212353]) + |> line(to = [-0.17254116580051848, -0.7669113400341137]) + |> line(to = [0.8944730032887609, 0.6093318694741408]) + |> line(to = [-0.3670208139314082, 0.21201331909674526]) + |> line(to = [-0.4707511307971115, 0.4905279615419764]) + |> line(to = [-0.8328324229085962, 0.4677492878818803]) + |> line(to = [-0.8111463382182231, -0.41814807547140576]) + |> line(to = [0.03807684940941125, 0.25664826686353326]) + |> line(to = [0.23950083339596384, 0.43693196301855575]) + |> line(to = [-0.16279444820904887, 0.8064475707664818]) + |> line(to = [-0.08972872009232558, -0.08887625823751266]) + |> line(to = [0.9203433427102556, -0.17343459369697545]) + |> line(to = [0.0017496234414517975, -0.5178508316168335]) + |> line(to = [0.6206263405732759, -0.8733399468665124]) + |> line(to = [-0.7776386664456383, 0.7602780485384968]) + |> line(to = [0.5439379760788592, 0.8449177589350552]) + |> line(to = [-0.13036646025917076, 0.012051713627069693]) + |> line(to = [-0.1656465612645519, -0.20775229173765486]) + |> line(to = [-0.0962723255929061, -0.05417797659066137]) + |> line(to = [0.902108945498191, 0.3958978534964961]) + |> line(to = [0.27997950083139167, -0.17778188444008958]) + |> line(to = [0.5235806061589545, 0.694318985642328]) + |> line(to = [0.39140760219992154, -0.7839795272576484]) + |> line(to = [0.8414243527073519, 0.5395591528940082]) + |> line(to = [0.6137667704875602, 0.22119647516722085]) + |> line(to = [0.8830488380766681, 0.6996724408425232]) + |> line(to = [-0.41290485754343953, -0.4152647361760933]) + |> line(to = [0.5169538755575687, -0.9085567867302617]) + |> line(to = [-0.6716353749059765, -0.9605576808879026]) + |> line(to = [0.010280170930300203, -0.37344123662342166]) + |> line(to = [0.10357375682791004, -0.42294321030821425]) + |> line(to = [0.4520311575096987, -0.11232675307600548]) + |> line(to = [-0.8821185914380845, -0.7155147434939819]) + |> line(to = [0.9195487101690416, 0.2691627465297364]) + |> line(to = [0.7098978191546745, 0.11710004169385968]) + |> line(to = [-0.37876368560819995, 0.7106729314759084]) + |> line(to = [-0.29728126898353335, -0.06649734568328003]) + |> line(to = [0.22965781558352072, -0.7601866432836641]) + |> line(to = [-0.6356501074317229, 0.19458425399338064]) + |> line(to = [0.5721251777404546, 0.2888584097921527]) + |> line(to = [-0.9580409549552311, -0.02243818192078395]) + |> line(to = [0.3299184618602866, -0.8353726942369875]) + |> line(to = [0.7434639386755209, -0.7919648864138378]) + |> line(to = [0.9935751011164615, 0.9042566468497608]) + |> line(to = [-0.5035812884687294, 0.5150967434989442]) + |> line(to = [0.5526227215900215, 0.7612604137272441]) + |> line(to = [0.8593271349126876, 0.08414894953725849]) + |> line(to = [-0.8181049219192864, -0.903548131323352]) + |> line(to = [0.3165782044458305, -0.24189274252014914]) + |> line(to = [-0.44390956414045135, -0.25912591535126905]) + |> line(to = [-0.6605165911891009, -0.40355115288839194]) + |> line(to = [-0.7170489950180006, 0.23454356079651384]) + |> line(to = [-0.2568187045379722, -0.45031188717601367]) + |> line(to = [0.6751951211858687, -0.9709424233465593]) + |> line(to = [-0.5689619842972184, 0.5918969913790362]) + |> line(to = [-0.8328324229085962, 0.4677492878818803]) + |> line(to = [-0.8111463382182231, -0.41814807547140576]) + |> line(to = [0.03807684940941125, 0.25664826686353326]) + |> line(to = [0.23950083339596384, 0.43693196301855575]) + |> line(to = [-0.16279444820904887, 0.8064475707664818]) + |> line(to = [-0.08972872009232558, -0.08887625823751266]) + |> line(to = [0.9203433427102556, -0.17343459369697545]) + |> line(to = [0.0017496234414517975, -0.5178508316168335]) + |> line(to = [0.6206263405732759, -0.8733399468665124]) + |> line(to = [-0.7776386664456383, 0.7602780485384968]) + |> line(to = [0.5439379760788592, 0.8449177589350552]) + |> line(to = [-0.13036646025917076, 0.012051713627069693]) + |> line(to = [-0.1656465612645519, -0.20775229173765486]) + |> line(to = [-0.0962723255929061, -0.05417797659066137]) + |> line(to = [0.902108945498191, 0.3958978534964961]) + |> line(to = [0.27997950083139167, -0.17778188444008958]) + |> line(to = [0.5235806061589545, 0.694318985642328]) + |> line(to = [0.39140760219992154, -0.7839795272576484]) + |> line(to = [0.8414243527073519, 0.5395591528940082]) + |> line(to = [0.6137667704875602, 0.22119647516722085]) + |> line(to = [0.8830488380766681, 0.6996724408425232]) + |> line(to = [-0.3670208139314082, 0.21201331909674526]) + |> line(to = [-0.4707511307971115, 0.4905279615419764]) + |> line(to = [-0.8328324229085962, 0.4677492878818803]) + |> line(to = [-0.8111463382182231, -0.41814807547140576]) + |> line(to = [0.03807684940941125, 0.25664826686353326]) + |> line(to = [0.23950083339596384, 0.43693196301855575]) + |> line(to = [-0.16279444820904887, 0.8064475707664818]) + |> line(to = [-0.08972872009232558, -0.08887625823751266]) + |> line(to = [0.9203433427102556, -0.17343459369697545]) + |> line(to = [0.0017496234414517975, -0.5178508316168335]) + |> line(to = [0.6206263405732759, -0.8733399468665124]) + |> line(to = [-0.7776386664456383, 0.7602780485384968]) + |> line(to = [0.5439379760788592, 0.8449177589350552]) + |> line(to = [-0.13036646025917076, 0.012051713627069693]) + |> line(to = [-0.1656465612645519, -0.20775229173765486]) + |> line(to = [-0.0962723255929061, -0.05417797659066137]) + |> line(to = [0.902108945498191, 0.3958978534964961]) + |> line(to = [0.27997950083139167, -0.17778188444008958]) + |> line(to = [0.5235806061589545, 0.694318985642328]) + |> line(to = [0.39140760219992154, -0.7839795272576484]) + |> line(to = [0.8414243527073519, 0.5395591528940082]) + |> line(to = [0.6137667704875602, 0.22119647516722085]) + |> line(to = [0.8830488380766681, 0.6996724408425232]) + |> line(to = [-0.41290485754343953, -0.4152647361760933]) + |> line(to = [0.5169538755575687, -0.9085567867302617]) + |> line(to = [-0.6716353749059765, -0.9605576808879026]) + |> line(to = [0.010280170930300203, -0.37344123662342166]) + |> line(to = [-0.3670208139314082, 0.21201331909674526]) + |> line(to = [-0.4707511307971115, 0.4905279615419764]) + |> line(to = [-0.8328324229085962, 0.4677492878818803]) + |> line(to = [-0.8111463382182231, -0.41814807547140576]) + |> line(to = [0.03807684940941125, 0.25664826686353326]) + |> line(to = [0.23950083339596384, 0.43693196301855575]) + |> line(to = [-0.16279444820904887, 0.8064475707664818]) + |> line(to = [-0.08972872009232558, -0.08887625823751266]) + |> line(to = [0.9203433427102556, -0.17343459369697545]) + |> line(to = [0.0017496234414517975, -0.5178508316168335]) + |> line(to = [0.6206263405732759, -0.8733399468665124]) + |> line(to = [-0.7776386664456383, 0.7602780485384968]) + |> line(to = [0.5439379760788592, 0.8449177589350552]) + |> line(to = [-0.13036646025917076, 0.012051713627069693]) + |> line(to = [-0.1656465612645519, -0.20775229173765486]) + |> line(to = [-0.0962723255929061, -0.05417797659066137]) + |> line(to = [0.902108945498191, 0.3958978534964961]) + |> line(to = [0.27997950083139167, -0.17778188444008958]) + |> line(to = [0.5235806061589545, 0.694318985642328]) + |> line(to = [0.39140760219992154, -0.7839795272576484]) + |> line(to = [0.8414243527073519, 0.5395591528940082]) + |> line(to = [0.6137667704875602, 0.22119647516722085]) + |> line(to = [0.8830488380766681, 0.6996724408425232]) + |> line(to = [-0.41290485754343953, -0.4152647361760933]) + |> line(to = [0.5169538755575687, -0.9085567867302617]) + |> line(to = [-0.6716353749059765, -0.9605576808879026]) + |> line(to = [0.010280170930300203, -0.37344123662342166]) + |> line(to = [0.10357375682791004, -0.42294321030821425]) + |> line(to = [0.4520311575096987, -0.11232675307600548]) + |> line(to = [-0.8821185914380845, -0.7155147434939819]) + |> line(to = [0.9195487101690416, 0.2691627465297364]) + |> line(to = [0.7098978191546745, 0.11710004169385968]) + |> line(to = [-0.37876368560819995, 0.7106729314759084]) + |> line(to = [-0.29728126898353335, -0.06649734568328003]) + |> line(to = [0.22965781558352072, -0.7601866432836641]) + |> line(to = [-0.6356501074317229, 0.19458425399338064]) + |> line(to = [0.5721251777404546, 0.2888584097921527]) + |> line(to = [-0.9580409549552311, -0.02243818192078395]) + |> line(to = [0.3299184618602866, -0.8353726942369875]) + |> line(to = [0.7434639386755209, -0.7919648864138378]) + |> line(to = [0.9935751011164615, 0.9042566468497608]) + |> line(to = [-0.5035812884687294, 0.5150967434989442]) + |> line(to = [0.5526227215900215, 0.7612604137272441]) + |> line(to = [0.8593271349126876, 0.08414894953725849]) + |> line(to = [-0.8181049219192864, -0.903548131323352]) + |> line(to = [0.3165782044458305, -0.24189274252014914]) + |> line(to = [-0.44390956414045135, -0.25912591535126905]) + |> line(to = [-0.6605165911891009, -0.40355115288839194]) + |> line(to = [-0.7170489950180006, 0.23454356079651384]) + |> line(to = [-0.2568187045379722, -0.45031188717601367]) + |> line(to = [0.6751951211858687, -0.9709424233465593]) + |> line(to = [-0.5689619842972184, 0.5918969913790362]) + |> line(to = [-0.8328324229085962, 0.4677492878818803]) + |> line(to = [-0.8111463382182231, -0.41814807547140576]) + |> line(to = [0.03807684940941125, 0.25664826686353326]) + |> line(to = [0.23950083339596384, 0.43693196301855575]) + |> line(to = [-0.16279444820904887, 0.8064475707664818]) + |> line(to = [-0.08972872009232558, -0.08887625823751266]) + |> line(to = [0.9203433427102556, -0.17343459369697545]) + |> line(to = [0.0017496234414517975, -0.5178508316168335]) + |> line(to = [0.6206263405732759, -0.8733399468665124]) + |> line(to = [-0.7776386664456383, 0.7602780485384968]) + |> line(to = [0.5439379760788592, 0.8449177589350552]) + |> line(to = [-0.13036646025917076, 0.012051713627069693]) + |> line(to = [-0.1656465612645519, -0.20775229173765486]) + |> line(to = [-0.0962723255929061, -0.05417797659066137]) + |> line(to = [0.902108945498191, 0.3958978534964961]) + |> line(to = [0.27997950083139167, -0.17778188444008958]) + |> line(to = [0.5235806061589545, 0.694318985642328]) + |> line(to = [0.39140760219992154, -0.7839795272576484]) + |> line(to = [0.8414243527073519, 0.5395591528940082]) + |> line(to = [0.6137667704875602, 0.22119647516722085]) + |> line(to = [0.8830488380766681, 0.6996724408425232]) + |> line(to = [-0.41290485754343953, -0.4152647361760933]) + |> line(to = [0.5169538755575687, -0.9085567867302617]) + |> line(to = [0.6751951211858687, -0.9709424233465593]) + |> line(to = [-0.5689619842972184, 0.5918969913790362]) + |> line(to = [0.9464450621708211, -0.2684908127803667]) + |> line(to = [0.5241732366617591, 0.9011437416408563]) + |> line(to = [-0.14255393713960607, -0.5194262624564814]) + |> line(to = [-0.4287123231350338, -0.4223564528725028]) + |> line(to = [-0.09316367294024519, -0.9063127021008246]) + |> line(to = [-0.2767766535558669, 0.6816248114129131]) + |> line(to = [0.9796762495562534, -0.0822145668330625]) + |> line(to = [-0.8666513070867441, -0.301053160242023]) + |> line(to = [0.537415656028112, 0.020272692875002774]) + |> line(to = [0.9332396256457531, -0.6228175690649898]) + |> line(to = [0.18052415837320734, -0.36894384647296197]) + |> line(to = [0.5384372634075449, 0.2377565050887107]) + |> line(to = [0.39043436929278874, 0.14273182483160451]) + |> line(to = [0.09782890412897283, 0.9907667536909659]) + |> line(to = [0.5286610085921146, -0.7924508308419256]) + |> line(to = [0.3789978184503342, 0.12396120576838676]) + |> line(to = [-0.9484912744890612, 0.6729649846476855]) + |> line(to = [0.7451758753425153, -0.21318737562458967]) + |> line(to = [0.1873200727251887, -0.15961374297992448]) + |> line(to = [-0.05729464924537564, -0.5436345558508746]) + |> line(to = [-0.09582414374469184, -0.7533839681212353]) + |> line(to = [-0.17254116580051848, -0.7669113400341137]) + |> line(to = [0.8944730032887609, 0.6093318694741408]) + |> line(to = [-0.3670208139314082, 0.21201331909674526]) + |> line(to = [-0.4707511307971115, 0.4905279615419764]) + |> line(to = [-0.8328324229085962, 0.4677492878818803]) + |> line(to = [-0.8111463382182231, -0.41814807547140576]) + |> line(to = [0.03807684940941125, 0.25664826686353326]) + |> line(to = [0.23950083339596384, 0.43693196301855575]) + |> line(to = [-0.16279444820904887, 0.8064475707664818]) + |> line(to = [-0.08972872009232558, -0.08887625823751266]) + |> line(to = [0.9203433427102556, -0.17343459369697545]) + |> line(to = [0.0017496234414517975, -0.5178508316168335]) + |> line(to = [0.6206263405732759, -0.8733399468665124]) + |> line(to = [-0.7776386664456383, 0.7602780485384968]) + |> line(to = [0.5439379760788592, 0.8449177589350552]) + |> line(to = [-0.13036646025917076, 0.012051713627069693]) + |> line(to = [-0.1656465612645519, -0.20775229173765486]) + |> line(to = [-0.0962723255929061, -0.05417797659066137]) + |> line(to = [0.902108945498191, 0.3958978534964961]) + |> line(to = [0.27997950083139167, -0.17778188444008958]) + |> line(to = [0.5235806061589545, 0.694318985642328]) + |> line(to = [0.39140760219992154, -0.7839795272576484]) + |> line(to = [0.8414243527073519, 0.5395591528940082]) + |> line(to = [0.6137667704875602, 0.22119647516722085]) + |> line(to = [0.8830488380766681, 0.6996724408425232]) + |> line(to = [-0.41290485754343953, -0.4152647361760933]) + |> line(to = [0.5169538755575687, -0.9085567867302617]) + |> line(to = [-0.6716353749059765, -0.9605576808879026]) + |> line(to = [0.010280170930300203, -0.37344123662342166]) + |> line(to = [0.10357375682791004, -0.42294321030821425]) + |> line(to = [0.4520311575096987, -0.11232675307600548]) + |> line(to = [-0.8821185914380845, -0.7155147434939819]) + |> line(to = [0.9195487101690416, 0.2691627465297364]) + |> line(to = [0.7098978191546745, 0.11710004169385968]) + |> line(to = [-0.37876368560819995, 0.7106729314759084]) + |> line(to = [-0.29728126898353335, -0.06649734568328003]) + |> line(to = [0.22965781558352072, -0.7601866432836641]) + |> line(to = [-0.6356501074317229, 0.19458425399338064]) + |> line(to = [0.5721251777404546, 0.2888584097921527]) + |> line(to = [-0.9580409549552311, -0.02243818192078395]) + |> line(to = [0.3299184618602866, -0.8353726942369875]) + |> line(to = [0.7434639386755209, -0.7919648864138378]) + |> line(to = [0.9935751011164615, 0.9042566468497608]) + |> line(to = [-0.5035812884687294, 0.5150967434989442]) + |> line(to = [0.5526227215900215, 0.7612604137272441]) + |> line(to = [0.8593271349126876, 0.08414894953725849]) + |> line(to = [-0.8181049219192864, -0.903548131323352]) + |> line(to = [0.3165782044458305, -0.24189274252014914]) + |> line(to = [-0.44390956414045135, -0.25912591535126905]) + |> line(to = [-0.6605165911891009, -0.40355115288839194]) + |> line(to = [-0.7170489950180006, 0.23454356079651384]) + |> line(to = [-0.2568187045379722, -0.45031188717601367]) + |> line(to = [0.6751951211858687, -0.9709424233465593]) + |> line(to = [-0.5689619842972184, 0.5918969913790362]) + |> line(to = [-0.8328324229085962, 0.4677492878818803]) + |> line(to = [-0.8111463382182231, -0.41814807547140576]) + |> line(to = [0.03807684940941125, 0.25664826686353326]) + |> line(to = [0.23950083339596384, 0.43693196301855575]) + |> line(to = [-0.16279444820904887, 0.8064475707664818]) + |> line(to = [-0.08972872009232558, -0.08887625823751266]) + |> line(to = [0.9203433427102556, -0.17343459369697545]) + |> line(to = [0.0017496234414517975, -0.5178508316168335]) + |> line(to = [0.6206263405732759, -0.8733399468665124]) + |> line(to = [-0.7776386664456383, 0.7602780485384968]) + |> line(to = [0.5439379760788592, 0.8449177589350552]) + |> line(to = [-0.13036646025917076, 0.012051713627069693]) + |> line(to = [-0.1656465612645519, -0.20775229173765486]) + |> line(to = [-0.0962723255929061, -0.05417797659066137]) + |> line(to = [0.902108945498191, 0.3958978534964961]) + |> line(to = [0.27997950083139167, -0.17778188444008958]) + |> line(to = [0.5235806061589545, 0.694318985642328]) + |> line(to = [0.39140760219992154, -0.7839795272576484]) + |> line(to = [0.8414243527073519, 0.5395591528940082]) + |> line(to = [0.6137667704875602, 0.22119647516722085]) + |> line(to = [0.8830488380766681, 0.6996724408425232]) + |> line(to = [-0.3670208139314082, 0.21201331909674526]) + |> line(to = [-0.4707511307971115, 0.4905279615419764]) + |> line(to = [-0.8328324229085962, 0.4677492878818803]) + |> line(to = [-0.8111463382182231, -0.41814807547140576]) + |> line(to = [0.03807684940941125, 0.25664826686353326]) + |> line(to = [0.23950083339596384, 0.43693196301855575]) + |> line(to = [-0.16279444820904887, 0.8064475707664818]) + |> line(to = [-0.08972872009232558, -0.08887625823751266]) + |> line(to = [0.9203433427102556, -0.17343459369697545]) + |> line(to = [0.0017496234414517975, -0.5178508316168335]) + |> line(to = [0.6206263405732759, -0.8733399468665124]) + |> line(to = [-0.7776386664456383, 0.7602780485384968]) + |> line(to = [0.5439379760788592, 0.8449177589350552]) + |> line(to = [-0.13036646025917076, 0.012051713627069693]) + |> line(to = [-0.1656465612645519, -0.20775229173765486]) + |> line(to = [-0.0962723255929061, -0.05417797659066137]) + |> line(to = [0.902108945498191, 0.3958978534964961]) + |> line(to = [0.27997950083139167, -0.17778188444008958]) + |> line(to = [0.5235806061589545, 0.694318985642328]) + |> line(to = [0.39140760219992154, -0.7839795272576484]) + |> line(to = [0.8414243527073519, 0.5395591528940082]) + |> line(to = [0.6137667704875602, 0.22119647516722085]) + |> line(to = [0.8830488380766681, 0.6996724408425232]) + |> line(to = [-0.41290485754343953, -0.4152647361760933]) + |> line(to = [0.5169538755575687, -0.9085567867302617]) + |> line(to = [-0.6716353749059765, -0.9605576808879026]) + |> line(to = [0.010280170930300203, -0.37344123662342166]) + |> line(to = [0.10357375682791004, -0.42294321030821425]) + |> line(to = [0.4520311575096987, -0.11232675307600548]) + |> line(to = [-0.8821185914380845, -0.7155147434939819]) + |> line(to = [0.9195487101690416, 0.2691627465297364]) + |> line(to = [0.7098978191546745, 0.11710004169385968]) + |> line(to = [-0.37876368560819995, 0.7106729314759084]) + |> line(to = [-0.29728126898353335, -0.06649734568328003]) + |> line(to = [0.22965781558352072, -0.7601866432836641]) + |> line(to = [-0.6356501074317229, 0.19458425399338064]) + |> line(to = [0.5721251777404546, 0.2888584097921527]) + |> line(to = [-0.9580409549552311, -0.02243818192078395]) + |> line(to = [0.3299184618602866, -0.8353726942369875]) + |> line(to = [0.7434639386755209, -0.7919648864138378]) + |> line(to = [0.9935751011164615, 0.9042566468497608]) + |> line(to = [-0.5035812884687294, 0.5150967434989442]) + |> line(to = [0.5526227215900215, 0.7612604137272441]) + |> line(to = [0.8593271349126876, 0.08414894953725849]) + |> line(to = [-0.8181049219192864, -0.903548131323352]) + |> line(to = [0.3165782044458305, -0.24189274252014914]) + |> line(to = [-0.44390956414045135, -0.25912591535126905]) + |> line(to = [-0.6605165911891009, -0.40355115288839194]) + |> line(to = [-0.7170489950180006, 0.23454356079651384]) + |> line(to = [-0.2568187045379722, -0.45031188717601367]) + |> line(to = [0.6751951211858687, -0.9709424233465593]) + |> line(to = [-0.5689619842972184, 0.5918969913790362]) + |> line(to = [-0.8328324229085962, 0.4677492878818803]) + |> line(to = [-0.8111463382182231, -0.41814807547140576]) + |> line(to = [0.03807684940941125, 0.25664826686353326]) + |> line(to = [0.23950083339596384, 0.43693196301855575]) + |> line(to = [-0.16279444820904887, 0.8064475707664818]) + |> line(to = [-0.08972872009232558, -0.08887625823751266]) + |> line(to = [0.9203433427102556, -0.17343459369697545]) + |> line(to = [0.0017496234414517975, -0.5178508316168335]) + |> line(to = [0.6206263405732759, -0.8733399468665124]) + |> line(to = [-0.7776386664456383, 0.7602780485384968]) + |> line(to = [0.5439379760788592, 0.8449177589350552]) + |> line(to = [-0.13036646025917076, 0.012051713627069693]) + |> line(to = [-0.1656465612645519, -0.20775229173765486]) + |> line(to = [-0.0962723255929061, -0.05417797659066137]) + |> line(to = [0.902108945498191, 0.3958978534964961]) + |> line(to = [0.27997950083139167, -0.17778188444008958]) + |> line(to = [0.5235806061589545, 0.694318985642328]) + |> line(to = [0.39140760219992154, -0.7839795272576484]) + |> line(to = [0.8414243527073519, 0.5395591528940082]) + |> line(to = [0.6137667704875602, 0.22119647516722085]) + |> line(to = [-0.09582414374469184, -0.7533839681212353]) + |> line(to = [-0.17254116580051848, -0.7669113400341137]) + |> line(to = [0.8944730032887609, 0.6093318694741408]) + |> line(to = [-0.41290485754343953, -0.4152647361760933]) + |> line(to = [0.5169538755575687, -0.9085567867302617]) + |> line(to = [0.6751951211858687, -0.9709424233465593]) + |> line(to = [-0.5689619842972184, 0.5918969913790362]) + |> line(to = [0.9464450621708211, -0.2684908127803667]) + |> line(to = [0.5241732366617591, 0.9011437416408563]) + |> line(to = [-0.14255393713960607, -0.5194262624564814]) + |> line(to = [-0.4287123231350338, -0.4223564528725028]) + |> line(to = [-0.09316367294024519, -0.9063127021008246]) + |> line(to = [-0.2767766535558669, 0.6816248114129131]) + |> line(to = [0.9796762495562534, -0.0822145668330625]) + |> line(to = [-0.8666513070867441, -0.301053160242023]) + |> line(to = [0.537415656028112, 0.020272692875002774]) + |> line(to = [0.9332396256457531, -0.6228175690649898]) + |> line(to = [0.18052415837320734, -0.36894384647296197]) + |> line(to = [0.5384372634075449, 0.2377565050887107]) + |> line(to = [0.39043436929278874, 0.14273182483160451]) + |> line(to = [0.09782890412897283, 0.9907667536909659]) + |> line(to = [0.5286610085921146, -0.7924508308419256]) + |> line(to = [0.3789978184503342, 0.12396120576838676]) + |> line(to = [-0.9484912744890612, 0.6729649846476855]) + |> line(to = [0.7451758753425153, -0.21318737562458967]) + |> line(to = [0.1873200727251887, -0.15961374297992448]) + |> line(to = [-0.05729464924537564, -0.5436345558508746]) + |> line(to = [-0.09582414374469184, -0.7533839681212353]) + |> line(to = [-0.17254116580051848, -0.7669113400341137]) + |> line(to = [0.8944730032887609, 0.6093318694741408]) + |> line(to = [-0.6238548626325471, 0.4053626746020169]) + |> line(to = [0.1379445992766417, -0.47871087958516045]) + |> line(to = [-0.9516767113283946, 0.8619900618578948]) + |> line(to = [0.9398732950992088, 0.6326239915683629]) + |> line(to = [-0.8631974445502164, 0.016153555523963137]) + |> line(to = [0.19167797120152907, -0.4916414381703984]) + |> line(to = [-0.8644261221501586, -0.11434763886359756]) + |> line(to = [-0.029081958413378572, -0.5214138808318329]) + |> line(to = [-0.8713091851579695, 0.7866284950967315]) + |> line(to = [0.884342023093545, -0.1825407002568431]) + |> line(to = [-0.6978385295364686, 0.0440574328736949]) + |> line(to = [-0.48055049324331556, -0.028546347149214002]) + |> line(to = [0.41283517382864776, -0.44938038251347323]) + |> line(to = [0.7911399832501751, 0.893446368526005]) + |> line(to = [0.6507434699009087, -0.6890023920962012]) + |> line(to = [0.10489019777253028, -0.5467450997193952]) + |> line(to = [-0.5760905289992633, -0.2639900702114173]) + |> line(to = [0.39828861790105297, 0.8036624129416385]) + |> line(to = [-0.673848991328553, -0.918443329270668]) + |> line(to = [-0.8599152936179257, -0.9499371022680787]) + |> line(to = [0.6285243831393765, -0.5186557636566307]) + |> line(to = [0.3222412784832269, 0.24621192679727177]) + |> line(to = [0.19754357911311016, -0.7529246632397206]) + |> line(to = [-0.43181570545865555, 0.18945437402201537]) + |> line(to = [0.8714511090241797, -0.7215844196844685]) + |> line(to = [-0.3670208139314082, 0.21201331909674526]) + |> line(to = [-0.4707511307971115, 0.4905279615419764]) + |> line(to = [-0.8328324229085962, 0.4677492878818803]) + |> line(to = [-0.8111463382182231, -0.41814807547140576]) + |> line(to = [0.03807684940941125, 0.25664826686353326]) + |> line(to = [0.23950083339596384, 0.43693196301855575]) + |> line(to = [-0.16279444820904887, 0.8064475707664818]) + |> line(to = [-0.08972872009232558, -0.08887625823751266]) + |> line(to = [0.9203433427102556, -0.17343459369697545]) + |> line(to = [0.0017496234414517975, -0.5178508316168335]) + |> line(to = [0.6206263405732759, -0.8733399468665124]) + |> line(to = [-0.7776386664456383, 0.7602780485384968]) + |> line(to = [0.5439379760788592, 0.8449177589350552]) + |> line(to = [-0.13036646025917076, 0.012051713627069693]) + |> line(to = [-0.1656465612645519, -0.20775229173765486]) + |> line(to = [-0.0962723255929061, -0.05417797659066137]) + |> line(to = [0.902108945498191, 0.3958978534964961]) + |> line(to = [0.27997950083139167, -0.17778188444008958]) + |> line(to = [0.5235806061589545, 0.694318985642328]) + |> line(to = [0.39140760219992154, -0.7839795272576484]) + |> line(to = [0.8414243527073519, 0.5395591528940082]) + |> line(to = [0.6137667704875602, 0.22119647516722085]) + |> line(to = [0.8830488380766681, 0.6996724408425232]) + |> line(to = [-0.41290485754343953, -0.4152647361760933]) + |> line(to = [0.5169538755575687, -0.9085567867302617]) + |> line(to = [-0.6716353749059765, -0.9605576808879026]) + |> line(to = [0.010280170930300203, -0.37344123662342166]) + |> line(to = [0.10357375682791004, -0.42294321030821425]) + |> line(to = [0.4520311575096987, -0.11232675307600548]) + |> line(to = [-0.8821185914380845, -0.7155147434939819]) + |> line(to = [0.9195487101690416, 0.2691627465297364]) + |> line(to = [0.7098978191546745, 0.11710004169385968]) + |> line(to = [-0.37876368560819995, 0.7106729314759084]) + |> line(to = [-0.29728126898353335, -0.06649734568328003]) + |> line(to = [0.22965781558352072, -0.7601866432836641]) + |> line(to = [-0.6356501074317229, 0.19458425399338064]) + |> line(to = [0.5721251777404546, 0.2888584097921527]) + |> line(to = [-0.9580409549552311, -0.02243818192078395]) + |> line(to = [0.3299184618602866, -0.8353726942369875]) + |> line(to = [0.7434639386755209, -0.7919648864138378]) + |> line(to = [0.9935751011164615, 0.9042566468497608]) + |> line(to = [-0.5035812884687294, 0.5150967434989442]) + |> line(to = [0.5526227215900215, 0.7612604137272441]) + |> line(to = [0.8593271349126876, 0.08414894953725849]) + |> line(to = [-0.8181049219192864, -0.903548131323352]) + |> line(to = [0.3165782044458305, -0.24189274252014914]) + |> line(to = [-0.44390956414045135, -0.25912591535126905]) + |> line(to = [-0.6605165911891009, -0.40355115288839194]) + |> line(to = [-0.7170489950180006, 0.23454356079651384]) + |> line(to = [-0.2568187045379722, -0.45031188717601367]) + |> line(to = [0.6751951211858687, -0.9709424233465593]) + |> line(to = [-0.5689619842972184, 0.5918969913790362]) + |> line(to = [-0.8328324229085962, 0.4677492878818803]) + |> line(to = [-0.8111463382182231, -0.41814807547140576]) + |> line(to = [0.03807684940941125, 0.25664826686353326]) + |> line(to = [0.23950083339596384, 0.43693196301855575]) + |> line(to = [-0.16279444820904887, 0.8064475707664818]) + |> line(to = [-0.08972872009232558, -0.08887625823751266]) + |> line(to = [0.9203433427102556, -0.17343459369697545]) + |> line(to = [0.0017496234414517975, -0.5178508316168335]) + |> line(to = [0.6206263405732759, -0.8733399468665124]) + |> line(to = [-0.7776386664456383, 0.7602780485384968]) + |> line(to = [0.5439379760788592, 0.8449177589350552]) + |> line(to = [-0.13036646025917076, 0.012051713627069693]) + |> line(to = [-0.1656465612645519, -0.20775229173765486]) + |> line(to = [-0.0962723255929061, -0.05417797659066137]) + |> line(to = [0.902108945498191, 0.3958978534964961]) + |> line(to = [0.27997950083139167, -0.17778188444008958]) + |> line(to = [0.5235806061589545, 0.694318985642328]) + |> line(to = [0.39140760219992154, -0.7839795272576484]) + |> line(to = [0.8414243527073519, 0.5395591528940082]) + |> line(to = [0.6137667704875602, 0.22119647516722085]) + |> line(to = [0.8830488380766681, 0.6996724408425232]) + |> line(to = [-0.41290485754343953, -0.4152647361760933]) + |> line(to = [0.5169538755575687, -0.9085567867302617]) + |> line(to = [0.6751951211858687, -0.9709424233465593]) + |> line(to = [-0.5689619842972184, 0.5918969913790362]) + |> line(to = [0.9464450621708211, -0.2684908127803667]) + |> line(to = [0.5241732366617591, 0.9011437416408563]) + |> line(to = [-0.14255393713960607, -0.5194262624564814]) + |> line(to = [-0.4287123231350338, -0.4223564528725028]) + |> line(to = [-0.09316367294024519, -0.9063127021008246]) + |> line(to = [-0.2767766535558669, 0.6816248114129131]) + |> line(to = [0.9796762495562534, -0.0822145668330625]) + |> line(to = [-0.8666513070867441, -0.301053160242023]) + |> line(to = [0.537415656028112, 0.020272692875002774]) + |> line(to = [0.9332396256457531, -0.6228175690649898]) + |> line(to = [0.18052415837320734, -0.36894384647296197]) + |> line(to = [0.5384372634075449, 0.2377565050887107]) + |> line(to = [0.39043436929278874, 0.14273182483160451]) + |> line(to = [0.09782890412897283, 0.9907667536909659]) + |> line(to = [0.5286610085921146, -0.7924508308419256]) + |> line(to = [0.3789978184503342, 0.12396120576838676]) + |> line(to = [-0.9484912744890612, 0.6729649846476855]) + |> line(to = [0.7451758753425153, -0.21318737562458967]) + |> line(to = [0.1873200727251887, -0.15961374297992448]) + |> line(to = [-0.05729464924537564, -0.5436345558508746]) + |> line(to = [-0.09582414374469184, -0.7533839681212353]) + |> line(to = [-0.17254116580051848, -0.7669113400341137]) + |> line(to = [0.8944730032887609, 0.6093318694741408]) + |> line(to = [-0.3670208139314082, 0.21201331909674526]) + |> line(to = [-0.4707511307971115, 0.4905279615419764]) + |> line(to = [-0.8328324229085962, 0.4677492878818803]) + |> line(to = [-0.8111463382182231, -0.41814807547140576]) + |> line(to = [0.03807684940941125, 0.25664826686353326]) + |> line(to = [0.23950083339596384, 0.43693196301855575]) + |> line(to = [-0.16279444820904887, 0.8064475707664818]) + |> line(to = [-0.08972872009232558, -0.08887625823751266]) + |> line(to = [0.9203433427102556, -0.17343459369697545]) + |> line(to = [0.0017496234414517975, -0.5178508316168335]) + |> line(to = [0.6206263405732759, -0.8733399468665124]) + |> line(to = [-0.7776386664456383, 0.7602780485384968]) + |> line(to = [0.5439379760788592, 0.8449177589350552]) + |> line(to = [-0.13036646025917076, 0.012051713627069693]) + |> line(to = [-0.1656465612645519, -0.20775229173765486]) + |> line(to = [-0.0962723255929061, -0.05417797659066137]) + |> line(to = [0.902108945498191, 0.3958978534964961]) + |> line(to = [0.27997950083139167, -0.17778188444008958]) + |> line(to = [0.5235806061589545, 0.694318985642328]) + |> line(to = [0.39140760219992154, -0.7839795272576484]) + |> line(to = [0.8414243527073519, 0.5395591528940082]) + |> line(to = [0.6137667704875602, 0.22119647516722085]) + |> line(to = [0.8830488380766681, 0.6996724408425232]) + |> line(to = [-0.41290485754343953, -0.4152647361760933]) + |> line(to = [0.5169538755575687, -0.9085567867302617]) + |> line(to = [-0.6716353749059765, -0.9605576808879026]) + |> line(to = [0.010280170930300203, -0.37344123662342166]) + |> line(to = [0.10357375682791004, -0.42294321030821425]) + |> line(to = [0.4520311575096987, -0.11232675307600548]) + |> line(to = [-0.8821185914380845, -0.7155147434939819]) + |> line(to = [0.9195487101690416, 0.2691627465297364]) + |> line(to = [0.7098978191546745, 0.11710004169385968]) + |> line(to = [-0.37876368560819995, 0.7106729314759084]) + |> line(to = [-0.29728126898353335, -0.06649734568328003]) + |> line(to = [0.22965781558352072, -0.7601866432836641]) + |> line(to = [-0.6356501074317229, 0.19458425399338064]) + |> line(to = [0.5721251777404546, 0.2888584097921527]) + |> line(to = [-0.9580409549552311, -0.02243818192078395]) + |> line(to = [0.3299184618602866, -0.8353726942369875]) + |> line(to = [0.7434639386755209, -0.7919648864138378]) + |> line(to = [0.9935751011164615, 0.9042566468497608]) + |> line(to = [-0.5035812884687294, 0.5150967434989442]) + |> line(to = [0.5526227215900215, 0.7612604137272441]) + |> line(to = [0.8593271349126876, 0.08414894953725849]) + |> line(to = [-0.8181049219192864, -0.903548131323352]) + |> line(to = [0.3165782044458305, -0.24189274252014914]) + |> line(to = [-0.44390956414045135, -0.25912591535126905]) + |> line(to = [-0.6605165911891009, -0.40355115288839194]) + |> line(to = [-0.7170489950180006, 0.23454356079651384]) + |> line(to = [-0.2568187045379722, -0.45031188717601367]) + |> line(to = [0.6751951211858687, -0.9709424233465593]) + |> line(to = [-0.5689619842972184, 0.5918969913790362]) + |> line(to = [-0.8328324229085962, 0.4677492878818803]) + |> line(to = [-0.8111463382182231, -0.41814807547140576]) + |> line(to = [0.03807684940941125, 0.25664826686353326]) + |> line(to = [0.23950083339596384, 0.43693196301855575]) + |> line(to = [-0.16279444820904887, 0.8064475707664818]) + |> line(to = [-0.08972872009232558, -0.08887625823751266]) + |> line(to = [0.9203433427102556, -0.17343459369697545]) + |> line(to = [0.0017496234414517975, -0.5178508316168335]) + |> line(to = [0.6206263405732759, -0.8733399468665124]) + |> line(to = [-0.7776386664456383, 0.7602780485384968]) + |> line(to = [0.5439379760788592, 0.8449177589350552]) + |> line(to = [-0.13036646025917076, 0.012051713627069693]) + |> line(to = [-0.1656465612645519, -0.20775229173765486]) + |> line(to = [-0.0962723255929061, -0.05417797659066137]) + |> line(to = [0.902108945498191, 0.3958978534964961]) + |> line(to = [0.27997950083139167, -0.17778188444008958]) + |> line(to = [0.5235806061589545, 0.694318985642328]) + |> line(to = [0.39140760219992154, -0.7839795272576484]) + |> line(to = [0.8414243527073519, 0.5395591528940082]) + |> line(to = [0.6137667704875602, 0.22119647516722085]) + |> line(to = [0.8830488380766681, 0.6996724408425232]) + |> line(to = [-0.3670208139314082, 0.21201331909674526]) + |> line(to = [-0.4707511307971115, 0.4905279615419764]) + |> line(to = [-0.8328324229085962, 0.4677492878818803]) + |> line(to = [-0.8111463382182231, -0.41814807547140576]) + |> line(to = [0.03807684940941125, 0.25664826686353326]) + |> line(to = [0.23950083339596384, 0.43693196301855575]) + |> line(to = [-0.16279444820904887, 0.8064475707664818]) + |> line(to = [-0.08972872009232558, -0.08887625823751266]) + |> line(to = [0.9203433427102556, -0.17343459369697545]) + |> line(to = [0.0017496234414517975, -0.5178508316168335]) + |> line(to = [0.6206263405732759, -0.8733399468665124]) + |> line(to = [-0.7776386664456383, 0.7602780485384968]) + |> line(to = [0.5439379760788592, 0.8449177589350552]) + |> line(to = [-0.13036646025917076, 0.012051713627069693]) + |> line(to = [-0.1656465612645519, -0.20775229173765486]) + |> line(to = [-0.0962723255929061, -0.05417797659066137]) + |> line(to = [0.902108945498191, 0.3958978534964961]) + |> line(to = [0.27997950083139167, -0.17778188444008958]) + |> line(to = [0.5235806061589545, 0.694318985642328]) + |> line(to = [0.39140760219992154, -0.7839795272576484]) + |> line(to = [0.8414243527073519, 0.5395591528940082]) + |> line(to = [0.6137667704875602, 0.22119647516722085]) + |> line(to = [0.8830488380766681, 0.6996724408425232]) + |> line(to = [-0.41290485754343953, -0.4152647361760933]) + |> line(to = [0.5169538755575687, -0.9085567867302617]) + |> line(to = [-0.6716353749059765, -0.9605576808879026]) + |> line(to = [0.010280170930300203, -0.37344123662342166]) + |> line(to = [-0.3670208139314082, 0.21201331909674526]) + |> line(to = [-0.4707511307971115, 0.4905279615419764]) + |> line(to = [-0.8328324229085962, 0.4677492878818803]) + |> line(to = [-0.8111463382182231, -0.41814807547140576]) + |> line(to = [0.03807684940941125, 0.25664826686353326]) + |> line(to = [0.23950083339596384, 0.43693196301855575]) + |> line(to = [-0.16279444820904887, 0.8064475707664818]) + |> line(to = [-0.08972872009232558, -0.08887625823751266]) + |> line(to = [0.9203433427102556, -0.17343459369697545]) + |> line(to = [0.0017496234414517975, -0.5178508316168335]) + |> line(to = [0.6206263405732759, -0.8733399468665124]) + |> line(to = [-0.7776386664456383, 0.7602780485384968]) + |> line(to = [0.5439379760788592, 0.8449177589350552]) + |> line(to = [-0.13036646025917076, 0.012051713627069693]) + |> line(to = [-0.1656465612645519, -0.20775229173765486]) + |> line(to = [-0.0962723255929061, -0.05417797659066137]) + |> line(to = [0.902108945498191, 0.3958978534964961]) + |> line(to = [0.27997950083139167, -0.17778188444008958]) + |> line(to = [0.5235806061589545, 0.694318985642328]) + |> line(to = [0.39140760219992154, -0.7839795272576484]) + |> line(to = [0.8414243527073519, 0.5395591528940082]) + |> line(to = [0.6137667704875602, 0.22119647516722085]) + |> line(to = [0.8830488380766681, 0.6996724408425232]) + |> line(to = [-0.41290485754343953, -0.4152647361760933]) + |> line(to = [0.5169538755575687, -0.9085567867302617]) + |> line(to = [-0.6716353749059765, -0.9605576808879026]) + |> line(to = [0.010280170930300203, -0.37344123662342166]) + |> line(to = [0.10357375682791004, -0.42294321030821425]) + |> line(to = [0.4520311575096987, -0.11232675307600548]) + |> line(to = [-0.8821185914380845, -0.7155147434939819]) + |> line(to = [0.9195487101690416, 0.2691627465297364]) + |> line(to = [0.7098978191546745, 0.11710004169385968]) + |> line(to = [-0.37876368560819995, 0.7106729314759084]) + |> line(to = [-0.29728126898353335, -0.06649734568328003]) + |> line(to = [0.22965781558352072, -0.7601866432836641]) + |> line(to = [-0.6356501074317229, 0.19458425399338064]) + |> line(to = [0.5721251777404546, 0.2888584097921527]) + |> line(to = [-0.9580409549552311, -0.02243818192078395]) + |> line(to = [0.3299184618602866, -0.8353726942369875]) + |> line(to = [0.7434639386755209, -0.7919648864138378]) + |> line(to = [0.9935751011164615, 0.9042566468497608]) + |> line(to = [-0.5035812884687294, 0.5150967434989442]) + |> line(to = [0.5526227215900215, 0.7612604137272441]) + |> line(to = [0.8593271349126876, 0.08414894953725849]) + |> line(to = [-0.8181049219192864, -0.903548131323352]) + |> line(to = [0.3165782044458305, -0.24189274252014914]) + |> line(to = [-0.44390956414045135, -0.25912591535126905]) + |> line(to = [-0.6605165911891009, -0.40355115288839194]) + |> line(to = [-0.7170489950180006, 0.23454356079651384]) + |> line(to = [-0.2568187045379722, -0.45031188717601367]) + |> line(to = [0.6751951211858687, -0.9709424233465593]) + |> line(to = [-0.5689619842972184, 0.5918969913790362]) + |> line(to = [-0.8328324229085962, 0.4677492878818803]) + |> line(to = [-0.8111463382182231, -0.41814807547140576]) + |> line(to = [0.03807684940941125, 0.25664826686353326]) + |> line(to = [0.23950083339596384, 0.43693196301855575]) + |> line(to = [-0.16279444820904887, 0.8064475707664818]) + |> line(to = [-0.08972872009232558, -0.08887625823751266]) + |> line(to = [0.9203433427102556, -0.17343459369697545]) + |> line(to = [0.0017496234414517975, -0.5178508316168335]) + |> line(to = [0.6206263405732759, -0.8733399468665124]) + |> line(to = [-0.7776386664456383, 0.7602780485384968]) + |> line(to = [0.5439379760788592, 0.8449177589350552]) + |> line(to = [-0.13036646025917076, 0.012051713627069693]) + |> line(to = [-0.1656465612645519, -0.20775229173765486]) + |> line(to = [-0.0962723255929061, -0.05417797659066137]) + |> line(to = [0.902108945498191, 0.3958978534964961]) + |> line(to = [0.27997950083139167, -0.17778188444008958]) + |> line(to = [0.5235806061589545, 0.694318985642328]) + |> line(to = [0.39140760219992154, -0.7839795272576484]) + |> line(to = [0.8414243527073519, 0.5395591528940082]) + |> line(to = [0.6137667704875602, 0.22119647516722085]) + |> line(to = [0.8830488380766681, 0.6996724408425232]) + |> line(to = [-0.41290485754343953, -0.4152647361760933]) + |> line(to = [0.5169538755575687, -0.9085567867302617]) + |> line(to = [0.6751951211858687, -0.9709424233465593]) + |> line(to = [-0.5689619842972184, 0.5918969913790362]) + |> line(to = [0.9464450621708211, -0.2684908127803667]) + |> line(to = [0.5241732366617591, 0.9011437416408563]) + |> line(to = [-0.14255393713960607, -0.5194262624564814]) + |> line(to = [-0.4287123231350338, -0.4223564528725028]) + |> line(to = [-0.09316367294024519, -0.9063127021008246]) + |> line(to = [-0.2767766535558669, 0.6816248114129131]) + |> line(to = [0.9796762495562534, -0.0822145668330625]) + |> line(to = [-0.8666513070867441, -0.301053160242023]) + |> line(to = [0.537415656028112, 0.020272692875002774]) + |> line(to = [0.9332396256457531, -0.6228175690649898]) + |> line(to = [0.18052415837320734, -0.36894384647296197]) + |> line(to = [0.5384372634075449, 0.2377565050887107]) + |> line(to = [0.39043436929278874, 0.14273182483160451]) + |> line(to = [0.09782890412897283, 0.9907667536909659]) + |> line(to = [0.5286610085921146, -0.7924508308419256]) + |> line(to = [0.3789978184503342, 0.12396120576838676]) + |> line(to = [-0.9484912744890612, 0.6729649846476855]) + |> line(to = [0.7451758753425153, -0.21318737562458967]) + |> line(to = [0.1873200727251887, -0.15961374297992448]) + |> line(to = [-0.05729464924537564, -0.5436345558508746]) + |> line(to = [-0.09582414374469184, -0.7533839681212353]) + |> line(to = [-0.17254116580051848, -0.7669113400341137]) + |> line(to = [0.8944730032887609, 0.6093318694741408]) + |> line(to = [-0.3670208139314082, 0.21201331909674526]) + |> line(to = [-0.4707511307971115, 0.4905279615419764]) + |> line(to = [-0.8328324229085962, 0.4677492878818803]) + |> line(to = [-0.8111463382182231, -0.41814807547140576]) + |> line(to = [0.03807684940941125, 0.25664826686353326]) + |> line(to = [0.23950083339596384, 0.43693196301855575]) + |> line(to = [-0.16279444820904887, 0.8064475707664818]) + |> line(to = [-0.08972872009232558, -0.08887625823751266]) + |> line(to = [0.9203433427102556, -0.17343459369697545]) + |> line(to = [0.0017496234414517975, -0.5178508316168335]) + |> line(to = [0.6206263405732759, -0.8733399468665124]) + |> line(to = [-0.7776386664456383, 0.7602780485384968]) + |> line(to = [0.5439379760788592, 0.8449177589350552]) + |> line(to = [-0.13036646025917076, 0.012051713627069693]) + |> line(to = [-0.1656465612645519, -0.20775229173765486]) + |> line(to = [-0.0962723255929061, -0.05417797659066137]) + |> line(to = [0.902108945498191, 0.3958978534964961]) + |> line(to = [0.27997950083139167, -0.17778188444008958]) + |> line(to = [0.5235806061589545, 0.694318985642328]) + |> line(to = [0.39140760219992154, -0.7839795272576484]) + |> line(to = [0.8414243527073519, 0.5395591528940082]) + |> line(to = [0.6137667704875602, 0.22119647516722085]) + |> line(to = [0.8830488380766681, 0.6996724408425232]) + |> line(to = [-0.41290485754343953, -0.4152647361760933]) + |> line(to = [0.5169538755575687, -0.9085567867302617]) + |> line(to = [-0.6716353749059765, -0.9605576808879026]) + |> line(to = [0.010280170930300203, -0.37344123662342166]) + |> line(to = [0.10357375682791004, -0.42294321030821425]) + |> line(to = [0.4520311575096987, -0.11232675307600548]) + |> line(to = [-0.8821185914380845, -0.7155147434939819]) + |> line(to = [0.9195487101690416, 0.2691627465297364]) + |> line(to = [0.7098978191546745, 0.11710004169385968]) + |> line(to = [-0.37876368560819995, 0.7106729314759084]) + |> line(to = [-0.29728126898353335, -0.06649734568328003]) + |> line(to = [0.22965781558352072, -0.7601866432836641]) + |> line(to = [-0.6356501074317229, 0.19458425399338064]) + |> line(to = [0.5721251777404546, 0.2888584097921527]) + |> line(to = [-0.9580409549552311, -0.02243818192078395]) + |> line(to = [0.3299184618602866, -0.8353726942369875]) + |> line(to = [0.7434639386755209, -0.7919648864138378]) + |> line(to = [0.9935751011164615, 0.9042566468497608]) + |> line(to = [-0.5035812884687294, 0.5150967434989442]) + |> line(to = [0.5526227215900215, 0.7612604137272441]) + |> line(to = [0.8593271349126876, 0.08414894953725849]) + |> line(to = [-0.8181049219192864, -0.903548131323352]) + |> line(to = [0.3165782044458305, -0.24189274252014914]) + |> line(to = [-0.44390956414045135, -0.25912591535126905]) + |> line(to = [-0.6605165911891009, -0.40355115288839194]) + |> line(to = [-0.7170489950180006, 0.23454356079651384]) + |> line(to = [-0.2568187045379722, -0.45031188717601367]) + |> line(to = [0.6751951211858687, -0.9709424233465593]) + |> line(to = [-0.5689619842972184, 0.5918969913790362]) + |> line(to = [-0.8328324229085962, 0.4677492878818803]) + |> line(to = [-0.8111463382182231, -0.41814807547140576]) + |> line(to = [0.03807684940941125, 0.25664826686353326]) + |> line(to = [0.23950083339596384, 0.43693196301855575]) + |> line(to = [-0.16279444820904887, 0.8064475707664818]) + |> line(to = [-0.08972872009232558, -0.08887625823751266]) + |> line(to = [0.9203433427102556, -0.17343459369697545]) + |> line(to = [0.0017496234414517975, -0.5178508316168335]) + |> line(to = [0.6206263405732759, -0.8733399468665124]) + |> line(to = [-0.7776386664456383, 0.7602780485384968]) + |> line(to = [0.5439379760788592, 0.8449177589350552]) + |> line(to = [-0.13036646025917076, 0.012051713627069693]) + |> line(to = [-0.1656465612645519, -0.20775229173765486]) + |> line(to = [-0.0962723255929061, -0.05417797659066137]) + |> line(to = [0.902108945498191, 0.3958978534964961]) + |> line(to = [0.27997950083139167, -0.17778188444008958]) + |> line(to = [0.5235806061589545, 0.694318985642328]) + |> line(to = [0.39140760219992154, -0.7839795272576484]) + |> line(to = [0.8414243527073519, 0.5395591528940082]) + |> line(to = [0.6137667704875602, 0.22119647516722085]) + |> line(to = [0.8830488380766681, 0.6996724408425232]) + |> line(to = [-0.3670208139314082, 0.21201331909674526]) + |> line(to = [-0.4707511307971115, 0.4905279615419764]) + |> line(to = [-0.8328324229085962, 0.4677492878818803]) + |> line(to = [-0.8111463382182231, -0.41814807547140576]) + |> line(to = [0.03807684940941125, 0.25664826686353326]) + |> line(to = [0.23950083339596384, 0.43693196301855575]) + |> line(to = [-0.16279444820904887, 0.8064475707664818]) + |> line(to = [-0.08972872009232558, -0.08887625823751266]) + |> line(to = [0.9203433427102556, -0.17343459369697545]) + |> line(to = [0.0017496234414517975, -0.5178508316168335]) + |> line(to = [0.6206263405732759, -0.8733399468665124]) + |> line(to = [-0.7776386664456383, 0.7602780485384968]) + |> line(to = [0.5439379760788592, 0.8449177589350552]) + |> line(to = [-0.13036646025917076, 0.012051713627069693]) + |> line(to = [-0.1656465612645519, -0.20775229173765486]) + |> line(to = [-0.0962723255929061, -0.05417797659066137]) + |> line(to = [0.902108945498191, 0.3958978534964961]) + |> line(to = [0.27997950083139167, -0.17778188444008958]) + |> line(to = [0.5235806061589545, 0.694318985642328]) + |> line(to = [0.39140760219992154, -0.7839795272576484]) + |> line(to = [0.8414243527073519, 0.5395591528940082]) + |> line(to = [0.6137667704875602, 0.22119647516722085]) + |> line(to = [0.8830488380766681, 0.6996724408425232]) + |> line(to = [-0.41290485754343953, -0.4152647361760933]) + |> line(to = [0.5169538755575687, -0.9085567867302617]) + |> line(to = [-0.6716353749059765, -0.9605576808879026]) + |> line(to = [0.010280170930300203, -0.37344123662342166]) + |> line(to = [0.10357375682791004, -0.42294321030821425]) + |> line(to = [0.4520311575096987, -0.11232675307600548]) + |> line(to = [-0.8821185914380845, -0.7155147434939819]) + |> line(to = [0.9195487101690416, 0.2691627465297364]) + |> line(to = [0.7098978191546745, 0.11710004169385968]) + |> line(to = [-0.37876368560819995, 0.7106729314759084]) + |> line(to = [-0.29728126898353335, -0.06649734568328003]) + |> line(to = [0.22965781558352072, -0.7601866432836641]) + |> line(to = [-0.6356501074317229, 0.19458425399338064]) + |> line(to = [0.5721251777404546, 0.2888584097921527]) + |> line(to = [-0.9580409549552311, -0.02243818192078395]) + |> line(to = [0.3299184618602866, -0.8353726942369875]) + |> line(to = [0.7434639386755209, -0.7919648864138378]) + |> line(to = [0.9935751011164615, 0.9042566468497608]) + |> line(to = [-0.5035812884687294, 0.5150967434989442]) + |> line(to = [0.5526227215900215, 0.7612604137272441]) + |> line(to = [0.8593271349126876, 0.08414894953725849]) + |> line(to = [-0.8181049219192864, -0.903548131323352]) + |> line(to = [0.3165782044458305, -0.24189274252014914]) + |> line(to = [-0.44390956414045135, -0.25912591535126905]) + |> line(to = [-0.6605165911891009, -0.40355115288839194]) + |> line(to = [-0.7170489950180006, 0.23454356079651384]) + |> line(to = [-0.2568187045379722, -0.45031188717601367]) + |> line(to = [0.6751951211858687, -0.9709424233465593]) + |> line(to = [-0.5689619842972184, 0.5918969913790362]) + |> line(to = [-0.8328324229085962, 0.4677492878818803]) + |> line(to = [-0.8111463382182231, -0.41814807547140576]) + |> line(to = [0.03807684940941125, 0.25664826686353326]) + |> line(to = [0.23950083339596384, 0.43693196301855575]) + |> line(to = [-0.16279444820904887, 0.8064475707664818]) + |> line(to = [-0.08972872009232558, -0.08887625823751266]) + |> line(to = [0.9203433427102556, -0.17343459369697545]) + |> line(to = [0.0017496234414517975, -0.5178508316168335]) + |> line(to = [0.6206263405732759, -0.8733399468665124]) + |> line(to = [-0.7776386664456383, 0.7602780485384968]) + |> line(to = [0.5439379760788592, 0.8449177589350552]) + |> line(to = [-0.13036646025917076, 0.012051713627069693]) + |> line(to = [-0.1656465612645519, -0.20775229173765486]) + |> line(to = [-0.0962723255929061, -0.05417797659066137]) + |> line(to = [0.902108945498191, 0.3958978534964961]) + |> line(to = [0.27997950083139167, -0.17778188444008958]) + |> line(to = [0.5235806061589545, 0.694318985642328]) + |> line(to = [0.39140760219992154, -0.7839795272576484]) + |> line(to = [0.8414243527073519, 0.5395591528940082]) + |> line(to = [0.6137667704875602, 0.22119647516722085]) + |> line(to = [-0.09582414374469184, -0.7533839681212353]) + |> line(to = [-0.17254116580051848, -0.7669113400341137]) + |> line(to = [0.8944730032887609, 0.6093318694741408]) + |> line(to = [-0.41290485754343953, -0.4152647361760933]) + |> line(to = [0.5169538755575687, -0.9085567867302617]) + |> line(to = [0.6751951211858687, -0.9709424233465593]) + |> line(to = [-0.5689619842972184, 0.5918969913790362]) + |> line(to = [0.9464450621708211, -0.2684908127803667]) + |> line(to = [0.5241732366617591, 0.9011437416408563]) + |> line(to = [-0.14255393713960607, -0.5194262624564814]) + |> line(to = [-0.4287123231350338, -0.4223564528725028]) + |> line(to = [-0.09316367294024519, -0.9063127021008246]) + |> line(to = [-0.2767766535558669, 0.6816248114129131]) + |> line(to = [0.9796762495562534, -0.0822145668330625]) + |> line(to = [-0.8666513070867441, -0.301053160242023]) + |> line(to = [0.537415656028112, 0.020272692875002774]) + |> line(to = [0.9332396256457531, -0.6228175690649898]) + |> line(to = [0.18052415837320734, -0.36894384647296197]) + |> line(to = [0.5384372634075449, 0.2377565050887107]) + |> line(to = [0.39043436929278874, 0.14273182483160451]) + |> line(to = [0.09782890412897283, 0.9907667536909659]) + |> line(to = [0.5286610085921146, -0.7924508308419256]) + |> line(to = [0.3789978184503342, 0.12396120576838676]) + |> line(to = [-0.9484912744890612, 0.6729649846476855]) + |> line(to = [0.7451758753425153, -0.21318737562458967]) + |> line(to = [0.1873200727251887, -0.15961374297992448]) + |> line(to = [-0.05729464924537564, -0.5436345558508746]) + |> line(to = [-0.09582414374469184, -0.7533839681212353]) + |> line(to = [-0.17254116580051848, -0.7669113400341137]) + |> line(to = [0.8944730032887609, 0.6093318694741408]) + |> line(to = [-0.6238548626325471, 0.4053626746020169]) + |> line(to = [0.1379445992766417, -0.47871087958516045]) + |> line(to = [-0.9516767113283946, 0.8619900618578948]) + |> line(to = [0.9398732950992088, 0.6326239915683629]) + |> line(to = [-0.8631974445502164, 0.016153555523963137]) + |> line(to = [0.19167797120152907, -0.4916414381703984]) + |> line(to = [-0.8644261221501586, -0.11434763886359756]) + |> line(to = [-0.029081958413378572, -0.5214138808318329]) + |> line(to = [-0.8713091851579695, 0.7866284950967315]) + |> line(to = [0.884342023093545, -0.1825407002568431]) + |> line(to = [-0.6978385295364686, 0.0440574328736949]) + |> line(to = [-0.48055049324331556, -0.028546347149214002]) + |> line(to = [0.41283517382864776, -0.44938038251347323]) + |> line(to = [0.7911399832501751, 0.893446368526005]) + |> line(to = [0.6507434699009087, -0.6890023920962012]) + |> line(to = [0.10489019777253028, -0.5467450997193952]) + |> line(to = [-0.5760905289992633, -0.2639900702114173]) + |> line(to = [0.39828861790105297, 0.8036624129416385]) + |> line(to = [-0.673848991328553, -0.918443329270668]) + |> line(to = [-0.8599152936179257, -0.9499371022680787]) + |> line(to = [0.6285243831393765, -0.5186557636566307]) + |> line(to = [0.3222412784832269, 0.24621192679727177]) + |> line(to = [0.19754357911311016, -0.7529246632397206]) + |> line(to = [-0.43181570545865555, 0.18945437402201537]) + |> line(to = [0.8714511090241797, -0.7215844196844685]) + |> close() + |> extrude(length = 5) diff --git a/src/wasm-lib/tests/executor/inputs/neg_xz_plane.kcl b/src/wasm-lib/tests/executor/inputs/neg_xz_plane.kcl index f718f82509..4488622cc6 100644 --- a/src/wasm-lib/tests/executor/inputs/neg_xz_plane.kcl +++ b/src/wasm-lib/tests/executor/inputs/neg_xz_plane.kcl @@ -1,6 +1,6 @@ part001 = startSketchOn('-XZ') |> startProfileAt([0, 0], %) - |> lineTo([100, 100], %) - |> lineTo([100, 0], %) - |> close(%) - |> extrude(5 + 7, %) + |> line(end = [100, 100]) + |> line(end = [100, 0]) + |> close() + |> extrude(length = 5 + 7) diff --git a/src/wasm-lib/tests/executor/inputs/negative_args.kcl b/src/wasm-lib/tests/executor/inputs/negative_args.kcl index 1983ef07e0..8c301cd878 100644 --- a/src/wasm-lib/tests/executor/inputs/negative_args.kcl +++ b/src/wasm-lib/tests/executor/inputs/negative_args.kcl @@ -5,11 +5,11 @@ const length = 12 fn box = (sk1, sk2, scale) => { const boxSketch = startSketchOn('XY') |> startProfileAt([sk1, sk2], %) - |> line([0, scale], %) - |> line([scale, 0], %) - |> line([0, -scale], %) - |> close(%) - |> extrude(scale, %) + |> line(to = [0, scale]) + |> line(to = [scale, 0]) + |> line(to = [0, -scale]) + |> close() + |> extrude(length = scale) return boxSketch } diff --git a/src/wasm-lib/tests/executor/inputs/order-sketch-extrude-in-order.kcl b/src/wasm-lib/tests/executor/inputs/order-sketch-extrude-in-order.kcl index af63140c3a..0b8458a689 100644 --- a/src/wasm-lib/tests/executor/inputs/order-sketch-extrude-in-order.kcl +++ b/src/wasm-lib/tests/executor/inputs/order-sketch-extrude-in-order.kcl @@ -19,13 +19,13 @@ const plane94894440791888 = { // create a sketch with UID 94894440902176 const sketch94894440902176 = startSketchOn('-XZ') |> startProfileAt([-0.005, -0.005], %) - |> line([0.01, 0.0], %, $line94894439494384) - |> line([0.0, 0.01], %, $line94894439429616) - |> line([-0.01, 0.0], %, $line94894439638160) - |> line([0.0, -0.01], %, $line94894439971808) + |> line(to = [0.01, 0.0], tag = $line94894439494384) + |> line(to = [0.0, 0.01], tag = $line94894439429616) + |> line(to = [-0.01, 0.0], tag = $line94894439638160) + |> line(to = [0.0, -0.01], tag = $line94894439971808) // create an extrusion with UID 94894439487136 -const extrude94894439487136 = extrude(0.01, sketch94894440902176) +const extrude94894439487136 = extrude(sketch94894440902176, length = 0.01) // create a sketch with UID 94894439448464 const sketch94894439448464 = startSketchOn(plane94894440791888) @@ -33,7 +33,7 @@ const sketch94894439448464 = startSketchOn(plane94894440791888) 0.00074557205559017, 0.00306415853984399 ], %) - |> line([0.004999999999999999, 0.0], %, $line94894440230336) - |> line([0.0, -0.005], %, $line94894439497168) - |> line([-0.004999999999999999, 0.0], %, $line94894439496768) - |> line([0.0, 0.005], %, $line94894440231952) + |> line(to = [0.004999999999999999, 0.0], tag = $line94894440230336) + |> line(to = [0.0, -0.005], tag = $line94894439497168) + |> line(to = [-0.004999999999999999, 0.0], tag = $line94894439496768) + |> line(to = [0.0, 0.005], tag = $line94894440231952) diff --git a/src/wasm-lib/tests/executor/inputs/order-sketch-extrude-out-of-order.kcl b/src/wasm-lib/tests/executor/inputs/order-sketch-extrude-out-of-order.kcl index 79ed5c170c..1c00eb04ff 100644 --- a/src/wasm-lib/tests/executor/inputs/order-sketch-extrude-out-of-order.kcl +++ b/src/wasm-lib/tests/executor/inputs/order-sketch-extrude-out-of-order.kcl @@ -19,10 +19,10 @@ const plane94894440791888 = { // create a sketch with UID 94894440902176 const sketch94894440902176 = startSketchOn('-XZ') |> startProfileAt([-0.005, -0.005], %) - |> line([0.01, 0.0], %, $line94894439494384) - |> line([0.0, 0.01], %, $line94894439429616) - |> line([-0.01, 0.0], %, $line94894439638160) - |> line([0.0, -0.01], %, $line94894439971808) + |> line(to = [0.01, 0.0], tag = $line94894439494384) + |> line(to = [0.0, 0.01], tag = $line94894439429616) + |> line(to = [-0.01, 0.0], tag = $line94894439638160) + |> line(to = [0.0, -0.01], tag = $line94894439971808) // create a sketch with UID 94894439448464 const sketch94894439448464 = startSketchOn(plane94894440791888) @@ -30,10 +30,10 @@ const sketch94894439448464 = startSketchOn(plane94894440791888) 0.00074557205559017, 0.00306415853984399 ], %) - |> line([0.004999999999999999, 0.0], %, $line94894440230336) - |> line([0.0, -0.005], %, $line94894439497168) - |> line([-0.004999999999999999, 0.0], %, $line94894439496768) - |> line([0.0, 0.005], %, $line94894440231952) + |> line(to = [0.004999999999999999, 0.0], tag = $line94894440230336) + |> line(to = [0.0, -0.005], tag = $line94894439497168) + |> line(to = [-0.004999999999999999, 0.0], tag = $line94894439496768) + |> line(to = [0.0, 0.005], tag = $line94894440231952) // create an extrusion with UID 94894439487136 -const extrude94894439487136 = extrude(0.01, sketch94894440902176) +const extrude94894439487136 = extrude(sketch94894440902176, length = 0.01) diff --git a/src/wasm-lib/tests/executor/inputs/parametric.kcl b/src/wasm-lib/tests/executor/inputs/parametric.kcl index 6880953152..bbe516c60d 100644 --- a/src/wasm-lib/tests/executor/inputs/parametric.kcl +++ b/src/wasm-lib/tests/executor/inputs/parametric.kcl @@ -9,10 +9,10 @@ const leg2 = 8 // inches const thickness = sqrt(distance * p * FOS * 6 / sigmaAllow / width) // inches const bracket = startSketchOn('XY') |> startProfileAt([0, 0], %) - |> line([0, leg1], %) - |> line([leg2, 0], %) - |> line([0, -thickness], %) - |> line([-leg2 + thickness, 0], %) - |> line([0, -leg1 + thickness], %) - |> close(%) - |> extrude(width, %) + |> line(to = [0, leg1]) + |> line(to = [leg2, 0]) + |> line(to = [0, -thickness]) + |> line(to = [-leg2 + thickness, 0]) + |> line(to = [0, -leg1 + thickness]) + |> close() + |> extrude(length = width) diff --git a/src/wasm-lib/tests/executor/inputs/parametric_with_tan_arc.kcl b/src/wasm-lib/tests/executor/inputs/parametric_with_tan_arc.kcl index f6c0858371..70b019ab04 100644 --- a/src/wasm-lib/tests/executor/inputs/parametric_with_tan_arc.kcl +++ b/src/wasm-lib/tests/executor/inputs/parametric_with_tan_arc.kcl @@ -9,18 +9,18 @@ const shelfMountL = 9 const wallMountL = 8 const bracket = startSketchAt([0, 0]) - |> line([0, wallMountL], %) + |> line(to = [0, wallMountL]) |> tangentialArc({ radius: filletR, offset: 90 }, %) - |> line([-shelfMountL, 0], %) - |> line([0, -thickness], %) - |> line([shelfMountL, 0], %) + |> line(to = [-shelfMountL, 0]) + |> line(to = [0, -thickness]) + |> line(to = [shelfMountL, 0]) |> tangentialArc({ radius: filletR - thickness, offset: -90 }, %) - |> line([0, -wallMountL], %) - |> close(%) - |> extrude(width, %) + |> line(to = [0, -wallMountL]) + |> close() + |> extrude(length = width) diff --git a/src/wasm-lib/tests/executor/inputs/pattern_vase.kcl b/src/wasm-lib/tests/executor/inputs/pattern_vase.kcl index c6edfd9862..ff255f9110 100644 --- a/src/wasm-lib/tests/executor/inputs/pattern_vase.kcl +++ b/src/wasm-lib/tests/executor/inputs/pattern_vase.kcl @@ -15,7 +15,7 @@ fn transform = (replicaId) => { fn layer = () => { return startSketchOn("XY") // or some other plane idk |> circle({ center: [0, 0], radius: 1 }, %, $tag1) - |> extrude(h, %) + |> extrude(length = h) // |> fillet({ // radius: h / 2.01, // tags: [tag1, getOppositeEdge(tag1)] diff --git a/src/wasm-lib/tests/executor/inputs/pentagon_fillet_sugar.kcl b/src/wasm-lib/tests/executor/inputs/pentagon_fillet_sugar.kcl index 4823592af3..a6602f55ce 100644 --- a/src/wasm-lib/tests/executor/inputs/pentagon_fillet_sugar.kcl +++ b/src/wasm-lib/tests/executor/inputs/pentagon_fillet_sugar.kcl @@ -6,22 +6,22 @@ let circ = {angle_start: 0, angle_end: 360, radius: radius} let triangleLen = 500 const p = startSketchOn('XY') |> startProfileAt([0, 0], %) - |> angledLine({angle: 60, length:triangleLen}, %, $a) - |> angledLine({angle: 180, length: triangleLen}, %, $b) - |> angledLine({angle: 300, length: triangleLen}, %, $c) - |> extrude(triangleHeight, %) + |> angledline(to = {angle: 60, length:triangleLen}, tag = $a) + |> angledline(to = {angle: 180, length: triangleLen}, tag = $b) + |> angledline(to = {angle: 300, length: triangleLen}, tag = $c) + |> extrude(length = triangleHeight) fn circl = (x, face) => { return startSketchOn(p, face) |> startProfileAt([x + radius, triangleHeight/2], %) |> arc(circ, %, $arc_tag) - |> close(%) + |> close() } const c1 = circl(-200,c) const plumbus1 = c1 - |> extrude(plumbusLen, %) + |> extrude(length = plumbusLen) |> fillet({ radius: 5, tags: [c1.tags.arc_tag, getOppositeEdge(c1.tags.arc_tag)] @@ -29,7 +29,7 @@ const plumbus1 = const c2 = circl(200, a) const plumbus0 = c2 - |> extrude(plumbusLen, %) + |> extrude(length = plumbusLen) |> fillet({ radius: 5, tags: [c2.tags.arc_tag, getOppositeEdge(c2.tags.arc_tag)] diff --git a/src/wasm-lib/tests/executor/inputs/pipe_as_arg.kcl b/src/wasm-lib/tests/executor/inputs/pipe_as_arg.kcl index d906a0fe8a..037336a61a 100644 --- a/src/wasm-lib/tests/executor/inputs/pipe_as_arg.kcl +++ b/src/wasm-lib/tests/executor/inputs/pipe_as_arg.kcl @@ -8,12 +8,12 @@ fn cube = (length, center) => { let p3 = [ l + x, -l + y] return startSketchAt(p0) - |> lineTo(p1, %) - |> lineTo(p2, %) - |> lineTo(p3, %) - |> lineTo(p0, %) - |> close(%) - |> extrude(length, %) + |> line(end = p1) + |> line(end = p2) + |> line(end = p3) + |> line(end = p0) + |> close() + |> extrude(length = length) } fn double = (x) => { return x * 2} diff --git a/src/wasm-lib/tests/executor/inputs/pipes_on_pipes.kcl b/src/wasm-lib/tests/executor/inputs/pipes_on_pipes.kcl index 29672cf17e..41b0871c93 100644 --- a/src/wasm-lib/tests/executor/inputs/pipes_on_pipes.kcl +++ b/src/wasm-lib/tests/executor/inputs/pipes_on_pipes.kcl @@ -1,8 +1,8 @@ const svg = startSketchOn('XY') |> startProfileAt([0, 0], %) -|> lineTo([22.687663, -2.7664351], %) // MoveRelative -|> lineTo([15.687664000000002, -5.7664351], %) // MoveRelative +|> line(end = [22.687663, -2.7664351]) // MoveRelative +|> line(end = [15.687664000000002, -5.7664351]) // MoveRelative |> bezierCurve({ control1: [9.6876636, -13.766435], control2: [12.350729000000001, -9.156355099999999], to: [12.350729000000001, -9.156355099999999]}, %) // CubicBezierRelative |> bezierCurve({ control1: [3.6876636000000005, -32.766435], control2: [6.962245000000001, -20.186315], to: [4.8344949, -25.885455]}, %) // CubicBezierRelative |> bezierCurve({ control1: [5.0392261000000005, -58.571125], control2: [2.9675173000000004, -41.612785], to: [3.0190312000000006, -49.894795]}, %) // CubicBezierRelative @@ -11,17 +11,17 @@ const svg = startSketchOn('XY') |> bezierCurve({ control1: [30.062663, -82.266435], control2: [24.812782, -81.936245], to: [24.812782, -81.936245]}, %) // CubicBezierRelative |> bezierCurve({ control1: [41.125163, -79.516435], control2: [35.794902, -82.039475], to: [35.794902, -82.039475]}, %) // CubicBezierRelative |> bezierCurve({ control1: [49.687663, -72.766435], control2: [45.867323, -76.907555], to: [45.867323, -76.907555]}, %) // CubicBezierRelative -|> lineTo([50.687663, -69.766435], %) // LineRelative -|> lineTo([50.687663, -62.766435], %) // VerticalLineHorizonal -|> lineTo([48.687663, -57.891435], %) // LineRelative +|> line(end = [50.687663, -69.766435]) // LineRelative +|> line(end = [50.687663, -62.766435]) // VerticalLineHorizonal +|> line(end = [48.687663, -57.891435]) // LineRelative |> bezierCurve({ control1: [46.351725, -31.692225], control2: [46.191183, -48.997725], to: [46.295503000000004, -40.884555000000006]}, %) // CubicBezierRelative |> bezierCurve({ control1: [47.7736, -20.934404999999998], control2: [46.687663, -25.766435], to: [46.687663, -25.766435]}, %) // CubicBezierRelative -|> lineTo([48.687663, -16.766434999999998], %) // LineRelative -|> lineTo([47.687663, -9.766435099999999], %) // LineRelative +|> line(end = [48.687663, -16.766434999999998]) // LineRelative +|> line(end = [47.687663, -9.766435099999999]) // LineRelative |> bezierCurve({ control1: [40.687663, -3.766435099999999], control2: [44.488820000000004, -6.310115099999999], to: [44.488820000000004, -6.310115099999999]}, %) // CubicBezierRelative |> bezierCurve({ control1: [22.687663, -2.766435099999999], control2: [34.632213, -2.2525750999999987], to: [28.903189, -2.550245099999999]}, %) // CubicBezierRelative // StopRelative -|> lineTo([116.68767, -9.766435099999999], %) // MoveRelative +|> line(end = [116.68767, -9.766435099999999]) // MoveRelative |> bezierCurve({ control1: [108.68767, -15.766434999999998], control2: [112.22719, -12.236704999999999], to: [112.22719, -12.236704999999999]}, %) // CubicBezierRelative |> bezierCurve({ control1: [102.37517, -28.953934999999998], control2: [105.79825, -20.100575], to: [103.93048, -23.991764999999997]}, %) // CubicBezierRelative |> bezierCurve({ control1: [101.68767, -47.766435], control2: [101.45837999999999, -35.371444999999994], to: [101.28287, -41.289805]}, %) // CubicBezierRelative @@ -29,53 +29,53 @@ const svg = startSketchOn('XY') |> bezierCurve({ control1: [116.68767, -66.766435], control2: [113.42043, -64.74899500000001], to: [113.42043, -64.74899500000001]}, %) // CubicBezierRelative |> bezierCurve({ control1: [134.68767, -64.766435], control2: [123.4012, -67.124495], to: [128.03363, -66.429955]}, %) // CubicBezierRelative |> bezierCurve({ control1: [143.68767, -60.766435], control2: [139.37985, -63.042205], to: [139.37985, -63.042205]}, %) // CubicBezierRelative -|> lineTo([148.68767, -55.766435], %) // LineRelative -|> lineTo([149.68767, -54.766435], %) // LineRelative +|> line(end = [148.68767, -55.766435]) // LineRelative +|> line(end = [149.68767, -54.766435]) // LineRelative |> bezierCurve({ control1: [149.75017, -46.078935], control2: [149.71427, -51.870655], to: [149.73387, -48.974805]}, %) // CubicBezierRelative |> bezierCurve({ control1: [150.68767, -36.766435], control2: [149.97673, -41.121905], to: [149.97673, -41.121905]}, %) // CubicBezierRelative |> bezierCurve({ control1: [158.68767, -30.766435], control2: [154.62517, -32.891435], to: [154.62517, -32.891435]}, %) // CubicBezierRelative -|> lineTo([160.68767, -26.766435], %) // LineRelative -|> lineTo([160.68767, -20.766435], %) // VerticalLineHorizonal +|> line(end = [160.68767, -26.766435]) // LineRelative +|> line(end = [160.68767, -20.766435]) // VerticalLineHorizonal |> bezierCurve({ control1: [149.68767, -9.8289351], control2: [157.40521999999999, -16.321455], to: [154.13992, -13.098555000000001]}, %) // CubicBezierRelative |> bezierCurve({ control1: [145.68767, -7.766435100000001], control2: [148.36767, -9.148315100000001], to: [147.04767, -8.4676851]}, %) // CubicBezierRelative |> bezierCurve({ control1: [116.68767, -9.7664351], control2: [135.27527, -6.278955100000001], to: [126.6914, -6.2357151]}, %) // CubicBezierRelative // StopRelative -|> lineTo([60.687663, -9.7664351], %) // MoveRelative -|> lineTo([54.687663, -13.766435000000001], %) // MoveRelative +|> line(end = [60.687663, -9.7664351]) // MoveRelative +|> line(end = [54.687663, -13.766435000000001]) // MoveRelative |> bezierCurve({ control1: [48.937663, -25.516435], control2: [50.481933, -19.450155000000002], to: [50.481933, -19.450155000000002]}, %) // CubicBezierRelative |> bezierCurve({ control1: [47.687663, -41.766435], control2: [47.773086, -31.339325000000002], to: [47.261382, -35.869545]}, %) // CubicBezierRelative |> bezierCurve({ control1: [50.687663, -56.766435], control2: [48.8286, -49.471785000000004], to: [48.8286, -49.471785000000004]}, %) // CubicBezierRelative -|> lineTo([54.687663, -62.766435], %) // LineRelative -|> lineTo([60.687663, -66.766435], %) // LineRelative +|> line(end = [54.687663, -62.766435]) // LineRelative +|> line(end = [60.687663, -66.766435]) // LineRelative |> bezierCurve({ control1: [69.562663, -67.203935], control2: [64.985029, -67.361225], to: [64.985029, -67.361225]}, %) // CubicBezierRelative |> bezierCurve({ control1: [74.17985, -67.199935], control2: [71.84817100000001, -67.201935], to: [71.84817100000001, -67.201935]}, %) // CubicBezierRelative |> bezierCurve({ control1: [86.687663, -63.766335], control2: [78.823333, -66.75328499999999], to: [82.418032, -65.599655]}, %) // CubicBezierRelative -|> lineTo([86.687663, -61.766335], %) // VerticalLineHorizonal -|> lineTo([90.687663, -60.766335], %) // LineRelative -|> lineTo([95.687663, -56.766335], %) // LineRelative -|> lineTo([98.687663, -49.766335], %) // LineRelative +|> line(end = [86.687663, -61.766335]) // VerticalLineHorizonal +|> line(end = [90.687663, -60.766335]) // LineRelative +|> line(end = [95.687663, -56.766335]) // LineRelative +|> line(end = [98.687663, -49.766335]) // LineRelative |> bezierCurve({ control1: [97.562663, -37.578835], control2: [98.934927, -43.021825], to: [98.934927, -43.021825]}, %) // CubicBezierRelative |> bezierCurve({ control1: [95.687663, -32.766335], control2: [96.943913, -35.990714999999994], to: [96.325163, -34.402584999999995]}, %) // CubicBezierRelative |> bezierCurve({ control1: [86.687663, -27.766334999999998], control2: [90.389309, -28.854045], to: [90.389309, -28.854045]}, %) // CubicBezierRelative -|> lineTo([84.687663, -23.766334999999998], %) // LineRelative -|> lineTo([82.687663, -22.766334999999998], %) // LineRelative -|> lineTo([79.687663, -17.766334999999998], %) // LineRelative -|> lineTo([77.687663, -17.766334999999998], %) // HorizontalLineRelative -|> lineTo([75.687663, -13.766334999999998], %) // LineRelative +|> line(end = [84.687663, -23.766334999999998]) // LineRelative +|> line(end = [82.687663, -22.766334999999998]) // LineRelative +|> line(end = [79.687663, -17.766334999999998]) // LineRelative +|> line(end = [77.687663, -17.766334999999998]) // HorizontalLineRelative +|> line(end = [75.687663, -13.766334999999998]) // LineRelative |> bezierCurve({ control1: [67.687663, -9.766335099999997], control2: [72.005138, -11.383034999999998], to: [72.005138, -11.383034999999998]}, %) // CubicBezierRelative -|> lineTo([60.687663, -9.766335099999997], %) // HorizontalLineRelative +|> line(end = [60.687663, -9.766335099999997]) // HorizontalLineRelative // StopRelative -|> lineTo([295.68767, -33.766435], %) // MoveAbsolute +|> line(end = [295.68767, -33.766435]) // MoveAbsolute |> bezierCurve({ control1: [286.31267, -36.578935], control2: [292.56461, -34.710375], to: [289.43947000000003, -35.647445000000005]}, %) // CubicBezierRelative |> bezierCurve({ control1: [242.00408000000002, -50.172685], control2: [271.51088000000004, -41.004795], to: [256.74729, -45.555595000000004]}, %) // CubicBezierRelative |> bezierCurve({ control1: [234.31267000000003, -52.578935], control2: [239.46591, -50.966755], to: [236.92775, -51.760815]}, %) // CubicBezierRelative |> bezierCurve({ control1: [227.28923000000003, -54.785975], control2: [231.99494, -53.307255], to: [229.67720000000003, -54.035585000000005]}, %) // CubicBezierRelative |> bezierCurve({ control1: [208.68767000000003, -59.766435], control2: [221.12295000000003, -56.635855], to: [214.94597000000005, -58.261215]}, %) // CubicBezierRelative -|> lineTo([208.68767000000003, -57.766435], %) // VerticalLineHorizonal -|> lineTo([212.68767000000003, -55.766435], %) // LineRelative +|> line(end = [208.68767000000003, -57.766435]) // VerticalLineHorizonal +|> line(end = [212.68767000000003, -55.766435]) // LineRelative |> bezierCurve({ control1: [217.68767000000003, -48.766435], control2: [215.57281000000003, -52.830805], to: [215.57281000000003, -52.830805]}, %) // CubicBezierRelative |> bezierCurve({ control1: [218.68767000000003, -37.766435], control2: [218.84802000000002, -43.253935], to: [218.84802000000002, -43.253935]}, %) // CubicBezierRelative -|> lineTo([215.68767000000003, -31.766435], %) // LineRelative +|> line(end = [215.68767000000003, -31.766435]) // LineRelative |> bezierCurve({ control1: [208.68767000000003, -26.766435], control2: [212.58234000000002, -28.940575000000003], to: [212.58234000000002, -28.940575000000003]}, %) // CubicBezierRelative |> bezierCurve({ control1: [192.68767000000003, -22.766435], control2: [203.18777000000003, -24.627585], to: [198.58520000000001, -23.608945000000002]}, %) // CubicBezierRelative |> bezierCurve({ control1: [174.68767000000003, -24.766435], control2: [186.30665000000002, -22.492965], to: [180.86041000000003, -23.137525]}, %) // CubicBezierRelative @@ -94,169 +94,169 @@ const svg = startSketchOn('XY') |> bezierCurve({ control1: [107.68767000000003, -72.766435], control2: [113.16586000000002, -73.682455], to: [113.16586000000002, -73.682455]}, %) // CubicBezierRelative |> bezierCurve({ control1: [84.93766300000003, -73.953935], control2: [99.87842800000003, -72.226315], to: [92.61523300000002, -72.36835500000001]}, %) // CubicBezierRelative |> bezierCurve({ control1: [80.68766300000003, -75.766435], control2: [83.53516300000003, -74.552065], to: [82.13266300000002, -75.15018500000001]}, %) // CubicBezierRelative -|> lineTo([75.68766300000003, -80.766435], %) // LineRelative -|> lineTo([76.68766300000003, -84.766435], %) // LineRelative -|> lineTo([81.68766300000003, -87.766435], %) // LineRelative +|> line(end = [75.68766300000003, -80.766435]) // LineRelative +|> line(end = [76.68766300000003, -84.766435]) // LineRelative +|> line(end = [81.68766300000003, -87.766435]) // LineRelative |> bezierCurve({ control1: [93.93766300000003, -87.891435], control2: [85.76704300000003, -87.950845], to: [89.85495700000003, -87.974265]}, %) // CubicBezierRelative |> bezierCurve({ control1: [105.68767000000003, -87.766435], control2: [97.85393000000003, -87.821635], to: [101.77078000000003, -87.772355]}, %) // CubicBezierRelative -|> lineTo([106.68767000000003, -88.766435], %) // LineRelative -|> lineTo([99.68766300000003, -90.766435], %) // LineRelative -|> lineTo([95.75016300000003, -93.266435], %) // LineRelative +|> line(end = [106.68767000000003, -88.766435]) // LineRelative +|> line(end = [99.68766300000003, -90.766435]) // LineRelative +|> line(end = [95.75016300000003, -93.266435]) // LineRelative |> bezierCurve({ control1: [83.68766300000003, -97.766435], control2: [91.68766300000003, -95.766435], to: [91.68766300000003, -95.766435]}, %) // CubicBezierRelative |> bezierCurve({ control1: [68.68766300000003, -102.76643], control2: [78.56377900000003, -99.248045], to: [73.64162800000003, -100.78485]}, %) // CubicBezierRelative |> bezierCurve({ control1: [52.68766300000003, -101.76643], control2: [63.09091200000003, -102.95723], to: [58.18407400000003, -102.86573]}, %) // CubicBezierRelative -|> lineTo([48.68766300000003, -106.76643], %) // LineRelative -|> lineTo([48.68766300000003, -114.76643], %) // VerticalLineHorizonal -|> lineTo([51.68766300000003, -121.76643], %) // LineRelative -|> lineTo([56.68766300000003, -123.76643], %) // LineRelative -|> lineTo([61.68766300000003, -123.76643], %) // HorizontalLineRelative -|> lineTo([64.68766300000003, -118.76643], %) // LineRelative -|> lineTo([69.68766300000003, -115.76643], %) // LineRelative -|> lineTo([69.68766300000003, -113.76643], %) // VerticalLineHorizonal -|> lineTo([75.68766300000003, -113.76643], %) // HorizontalLineRelative -|> lineTo([79.68766300000003, -110.76643], %) // LineRelative -|> lineTo([79.68766300000003, -108.76643], %) // VerticalLineHorizonal -|> lineTo([85.68766300000003, -109.76643], %) // LineRelative -|> lineTo([88.68766300000003, -106.76643], %) // LineRelative -|> lineTo([88.68766300000003, -102.76643], %) // VerticalLineHorizonal +|> line(end = [48.68766300000003, -106.76643]) // LineRelative +|> line(end = [48.68766300000003, -114.76643]) // VerticalLineHorizonal +|> line(end = [51.68766300000003, -121.76643]) // LineRelative +|> line(end = [56.68766300000003, -123.76643]) // LineRelative +|> line(end = [61.68766300000003, -123.76643]) // HorizontalLineRelative +|> line(end = [64.68766300000003, -118.76643]) // LineRelative +|> line(end = [69.68766300000003, -115.76643]) // LineRelative +|> line(end = [69.68766300000003, -113.76643]) // VerticalLineHorizonal +|> line(end = [75.68766300000003, -113.76643]) // HorizontalLineRelative +|> line(end = [79.68766300000003, -110.76643]) // LineRelative +|> line(end = [79.68766300000003, -108.76643]) // VerticalLineHorizonal +|> line(end = [85.68766300000003, -109.76643]) // LineRelative +|> line(end = [88.68766300000003, -106.76643]) // LineRelative +|> line(end = [88.68766300000003, -102.76643]) // VerticalLineHorizonal |> bezierCurve({ control1: [99.68766300000003, -101.76643], control2: [93.93766300000003, -102.01643], to: [93.93766300000003, -102.01643]}, %) // CubicBezierRelative -|> lineTo([103.68767000000003, -105.76643], %) // LineRelative -|> lineTo([106.68767000000003, -106.76643], %) // LineRelative +|> line(end = [103.68767000000003, -105.76643]) // LineRelative +|> line(end = [106.68767000000003, -106.76643]) // LineRelative |> bezierCurve({ control1: [107.68767000000003, -102.76643], control2: [107.18267000000003, -104.78643], to: [107.18267000000003, -104.78643]}, %) // CubicBezierRelative -|> lineTo([116.68767000000003, -102.76643], %) // HorizontalLineRelative -|> lineTo([113.68767000000003, -108.76643], %) // LineRelative +|> line(end = [116.68767000000003, -102.76643]) // HorizontalLineRelative +|> line(end = [113.68767000000003, -108.76643]) // LineRelative |> bezierCurve({ control1: [101.68767000000003, -114.76643], control2: [109.73020000000002, -110.84932], to: [105.72846000000003, -112.85018]}, %) // CubicBezierRelative -|> lineTo([97.68766300000003, -118.76643], %) // LineRelative -|> lineTo([97.68766300000003, -125.76643], %) // VerticalLineHorizonal -|> lineTo([101.68767000000003, -128.76643], %) // LineRelative +|> line(end = [97.68766300000003, -118.76643]) // LineRelative +|> line(end = [97.68766300000003, -125.76643]) // VerticalLineHorizonal +|> line(end = [101.68767000000003, -128.76643]) // LineRelative |> bezierCurve({ control1: [115.75017000000003, -126.57893000000001], control2: [106.58566000000002, -128.61801000000003], to: [110.98125000000003, -127.69757000000001]}, %) // CubicBezierRelative |> bezierCurve({ control1: [124.93767000000003, -122.01643000000001], control2: [120.74370000000002, -124.95192000000002], to: [120.74370000000002, -124.95192000000002]}, %) // CubicBezierRelative |> bezierCurve({ control1: [134.68767000000003, -111.76643000000001], control2: [128.66063000000003, -118.78987000000001], to: [131.76465000000002, -115.73339000000001]}, %) // CubicBezierRelative |> bezierCurve({ control1: [136.68767000000003, -96.76643500000002], control2: [137.05397000000002, -104.69775000000001], to: [137.05397000000002, -104.69775000000001]}, %) // CubicBezierRelative -|> lineTo([135.68767000000003, -95.76643500000002], %) // LineRelative -|> lineTo([144.68767000000003, -91.76643500000002], %) // LineRelative -|> lineTo([144.68767000000003, -89.76643500000002], %) // VerticalLineHorizonal +|> line(end = [135.68767000000003, -95.76643500000002]) // LineRelative +|> line(end = [144.68767000000003, -91.76643500000002]) // LineRelative +|> line(end = [144.68767000000003, -89.76643500000002]) // VerticalLineHorizonal |> bezierCurve({ control1: [149.18767000000003, -88.95393500000002], control2: [146.91517000000002, -89.36425500000001], to: [146.91517000000002, -89.36425500000001]}, %) // CubicBezierRelative |> bezierCurve({ control1: [158.81267000000003, -86.20393500000002], control2: [154.52930000000003, -87.94347500000002], to: [154.52930000000003, -87.94347500000002]}, %) // CubicBezierRelative |> bezierCurve({ control1: [170.68767000000003, -83.76643500000002], control2: [162.68767000000003, -84.76643500000002], to: [162.68767000000003, -84.76643500000002]}, %) // CubicBezierRelative -|> lineTo([169.68767000000003, -87.76643500000002], %) // LineRelative +|> line(end = [169.68767000000003, -87.76643500000002]) // LineRelative |> bezierCurve({ control1: [173.81267000000003, -124.20393000000001], control2: [169.31325000000004, -100.37193000000002], to: [170.34211000000002, -112.05696000000002]}, %) // CubicBezierRelative |> bezierCurve({ control1: [175.68767000000003, -129.76643], control2: [174.43142000000003, -126.03956000000001], to: [175.05017000000004, -127.87518000000001]}, %) // CubicBezierRelative -|> lineTo([177.68767000000003, -129.76643], %) // HorizontalLineRelative -|> lineTo([179.68767000000003, -133.76643], %) // LineRelative -|> lineTo([185.68767000000003, -138.76643], %) // LineRelative +|> line(end = [177.68767000000003, -129.76643]) // HorizontalLineRelative +|> line(end = [179.68767000000003, -133.76643]) // LineRelative +|> line(end = [185.68767000000003, -138.76643]) // LineRelative |> bezierCurve({ control1: [202.68767000000003, -139.76643], control2: [191.47452, -140.21315], to: [196.74116000000004, -140.04174]}, %) // CubicBezierRelative |> bezierCurve({ control1: [210.68767000000003, -135.76643], control2: [207.25921000000002, -138.23436], to: [207.25921000000002, -138.23436]}, %) // CubicBezierRelative |> bezierCurve({ control1: [215.35564000000002, -128.27815], control2: [213.71484000000004, -132.0027], to: [213.71484000000004, -132.0027]}, %) // CubicBezierRelative |> bezierCurve({ control1: [216.91033000000002, -104.88753000000001], control2: [217.63118000000003, -120.57069000000001], to: [217.01741, -112.86275]}, %) // CubicBezierRelative |> bezierCurve({ control1: [214.68767000000003, -85.76643500000002], control2: [216.67209000000003, -98.33796500000001], to: [216.17402, -92.15775500000001]}, %) // CubicBezierRelative -|> lineTo([210.68767000000003, -78.76643500000002], %) // LineRelative -|> lineTo([207.68767000000003, -78.76643500000002], %) // HorizontalLineRelative -|> lineTo([207.68767000000003, -75.76643500000002], %) // VerticalLineHorizonal -|> lineTo([203.68767000000003, -74.76643500000002], %) // LineRelative -|> lineTo([204.68767000000003, -70.76643500000002], %) // LineRelative -|> lineTo([209.50017000000003, -70.01643500000002], %) // LineRelative +|> line(end = [210.68767000000003, -78.76643500000002]) // LineRelative +|> line(end = [207.68767000000003, -78.76643500000002]) // HorizontalLineRelative +|> line(end = [207.68767000000003, -75.76643500000002]) // VerticalLineHorizonal +|> line(end = [203.68767000000003, -74.76643500000002]) // LineRelative +|> line(end = [204.68767000000003, -70.76643500000002]) // LineRelative +|> line(end = [209.50017000000003, -70.01643500000002]) // LineRelative |> bezierCurve({ control1: [226.68767000000003, -64.76643500000002], control2: [215.57464000000002, -68.78927500000002], to: [220.89892000000003, -66.95330500000001]}, %) // CubicBezierRelative |> bezierCurve({ control1: [247.31267000000003, -58.578935000000016], control2: [233.53624000000002, -62.60005500000001], to: [240.40800000000002, -60.55978500000002]}, %) // CubicBezierRelative |> bezierCurve({ control1: [277.21111, -48.92659500000001], control2: [257.37096, -55.63882500000002], to: [267.2794, -52.26503500000001]}, %) // CubicBezierRelative |> bezierCurve({ control1: [299.68767, -41.766435000000016], control2: [284.67443000000003, -46.437325000000016], to: [292.16675000000004, -44.07484500000001]}, %) // CubicBezierRelative -|> lineTo([299.68767, -39.766435000000016], %) // VerticalLineHorizonal +|> line(end = [299.68767, -39.766435000000016]) // VerticalLineHorizonal |> bezierCurve({ control1: [306.50017, -39.328935000000016], control2: [301.93580000000003, -39.62206500000001], to: [304.18392, -39.477685000000015]}, %) // CubicBezierRelative |> bezierCurve({ control1: [316.68767, -37.766435000000016], control2: [313.07319, -39.10529500000001], to: [313.07319, -39.10529500000001]}, %) // CubicBezierRelative -|> lineTo([316.68767, -35.766435000000016], %) // VerticalLineHorizonal -|> lineTo([320.56267, -35.016435000000016], %) // LineRelative +|> line(end = [316.68767, -35.766435000000016]) // VerticalLineHorizonal +|> line(end = [320.56267, -35.016435000000016]) // LineRelative |> bezierCurve({ control1: [335.68767, -29.766435000000016], control2: [325.89187000000004, -33.71663500000002], to: [330.60815, -31.833685000000017]}, %) // CubicBezierRelative |> bezierCurve({ control1: [343.56267, -27.266435000000016], control2: [339.5858, -28.528935000000015], to: [339.5858, -28.528935000000015]}, %) // CubicBezierRelative -|> lineTo([350.68767, -24.766435000000016], %) // LineRelative -|> lineTo([354.68767, -20.766435000000016], %) // LineRelative +|> line(end = [350.68767, -24.766435000000016]) // LineRelative +|> line(end = [354.68767, -20.766435000000016]) // LineRelative |> bezierCurve({ control1: [295.68767, -33.766435000000016], control2: [334.809, -20.766435000000016], to: [314.44364, -27.758665000000015]}, %) // CubicBezierRelative // StopRelative -|> lineTo([299.68767, -66.76643500000002], %) // MoveRelative +|> line(end = [299.68767, -66.76643500000002]) // MoveRelative |> bezierCurve({ control1: [285.00017, -76.64143500000002], control2: [293.75788, -69.23718500000001], to: [289.90768, -72.43500500000002]}, %) // CubicBezierRelative |> bezierCurve({ control1: [276.37517, -85.70393500000002], control2: [279.86247000000003, -81.42042500000002], to: [279.86247000000003, -81.42042500000002]}, %) // CubicBezierRelative |> bezierCurve({ control1: [273.68767, -88.76643500000002], control2: [275.48830000000004, -86.71456500000002], to: [274.60142, -87.72518500000001]}, %) // CubicBezierRelative -|> lineTo([267.68767, -91.76643500000002], %) // LineRelative -|> lineTo([264.68767, -96.76643500000002], %) // LineRelative +|> line(end = [267.68767, -91.76643500000002]) // LineRelative +|> line(end = [264.68767, -96.76643500000002]) // LineRelative |> bezierCurve({ control1: [266.68767, -111.76643000000001], control2: [264.32138000000003, -104.69775000000001], to: [264.32138000000003, -104.69775000000001]}, %) // CubicBezierRelative |> bezierCurve({ control1: [278.68767, -123.76643000000001], control2: [270.61411000000004, -116.17816000000002], to: [274.2035, -120.01380000000002]}, %) // CubicBezierRelative -|> lineTo([282.93767, -126.01643000000001], %) // LineRelative +|> line(end = [282.93767, -126.01643000000001]) // LineRelative |> bezierCurve({ control1: [303.68767, -126.76643000000001], control2: [289.896, -127.11512000000002], to: [296.66137000000003, -126.99871000000002]}, %) // CubicBezierRelative -|> lineTo([305.68767, -125.76643000000001], %) // LineRelative -|> lineTo([310.68767, -124.76643000000001], %) // LineRelative -|> lineTo([317.68767, -122.76643000000001], %) // LineRelative +|> line(end = [305.68767, -125.76643000000001]) // LineRelative +|> line(end = [310.68767, -124.76643000000001]) // LineRelative +|> line(end = [317.68767, -122.76643000000001]) // LineRelative |> bezierCurve({ control1: [324.37517, -113.14143000000001], control2: [322.56495, -117.43458000000001], to: [322.56495, -117.43458000000001]}, %) // CubicBezierRelative |> bezierCurve({ control1: [327.68767, -96.76643500000002], control2: [326.02173000000005, -107.65292000000001], to: [327.05405, -102.46899000000002]}, %) // CubicBezierRelative |> bezierCurve({ control1: [323.37517, -79.39143500000002], control2: [327.04242000000005, -90.45732500000001], to: [325.54155000000003, -85.36362500000001]}, %) // CubicBezierRelative |> bezierCurve({ control1: [320.68767, -73.76643500000002], control2: [322.48830000000004, -77.53518500000001], to: [321.60142, -75.67893500000001]}, %) // CubicBezierRelative -|> lineTo([315.68767, -68.76643500000002], %) // LineRelative +|> line(end = [315.68767, -68.76643500000002]) // LineRelative |> bezierCurve({ control1: [305.43767, -66.32893500000002], control2: [310.76687000000004, -66.51488500000002], to: [310.76687000000004, -66.51488500000002]}, %) // CubicBezierRelative |> bezierCurve({ control1: [299.68767, -66.76643500000002], control2: [302.59142, -66.54550500000002], to: [302.59142, -66.54550500000002]}, %) // CubicBezierRelative // StopRelative -|> lineTo([240.68767000000003, -68.76643500000002], %) // MoveRelative +|> line(end = [240.68767000000003, -68.76643500000002]) // MoveRelative |> bezierCurve({ control1: [222.68767000000003, -80.76643500000002], control2: [233.66999, -72.11131500000002], to: [228.65800000000002, -75.79116500000002]}, %) // CubicBezierRelative -|> lineTo([219.68767000000003, -86.76643500000002], %) // LineRelative +|> line(end = [219.68767000000003, -86.76643500000002]) // LineRelative |> bezierCurve({ control1: [222.55095000000003, -116.67268000000001], control2: [219.05386000000001, -97.26953500000002], to: [220.04332000000002, -106.46619000000001]}, %) // CubicBezierRelative |> bezierCurve({ control1: [227.68767000000003, -130.76643], control2: [223.91824000000003, -121.59681000000002], to: [225.39892000000003, -126.18894000000002]}, %) // CubicBezierRelative |> bezierCurve({ control1: [236.43377000000004, -136.4969], control2: [232.25590000000003, -134.74853000000002], to: [232.25590000000003, -134.74853000000002]}, %) // CubicBezierRelative |> bezierCurve({ control1: [249.75017000000003, -138.07893], control2: [241.08415000000005, -137.88476], to: [244.90570000000002, -138.13253]}, %) // CubicBezierRelative |> bezierCurve({ control1: [254.34783000000002, -138.06723000000002], control2: [251.26740000000004, -138.07493000000002], to: [252.78463000000002, -138.07093]}, %) // CubicBezierRelative |> bezierCurve({ control1: [265.68767, -135.76644000000002], control2: [259.20097000000004, -137.88174000000004], to: [259.20097000000004, -137.88174000000004]}, %) // CubicBezierRelative -|> lineTo([265.68767, -132.76644000000002], %) // VerticalLineHorizonal -|> lineTo([267.68767, -132.76644000000002], %) // HorizontalLineRelative +|> line(end = [265.68767, -132.76644000000002]) // VerticalLineHorizonal +|> line(end = [267.68767, -132.76644000000002]) // HorizontalLineRelative |> bezierCurve({ control1: [268.56267, -122.32894000000002], control2: [268.96128000000004, -128.41242000000003], to: [268.96128000000004, -128.41242000000003]}, %) // CubicBezierRelative -|> lineTo([267.68767, -115.76644000000002], %) // LineRelative -|> lineTo([262.68767, -110.76644000000002], %) // LineRelative -|> lineTo([259.68767, -104.76644000000002], %) // LineRelative -|> lineTo([259.68767, -96.76644500000002], %) // VerticalLineHorizonal -|> lineTo([263.68767, -91.76644500000002], %) // LineRelative -|> lineTo([263.68767, -88.76644500000002], %) // VerticalLineHorizonal -|> lineTo([265.68767, -88.76644500000002], %) // HorizontalLineRelative +|> line(end = [267.68767, -115.76644000000002]) // LineRelative +|> line(end = [262.68767, -110.76644000000002]) // LineRelative +|> line(end = [259.68767, -104.76644000000002]) // LineRelative +|> line(end = [259.68767, -96.76644500000002]) // VerticalLineHorizonal +|> line(end = [263.68767, -91.76644500000002]) // LineRelative +|> line(end = [263.68767, -88.76644500000002]) // VerticalLineHorizonal +|> line(end = [265.68767, -88.76644500000002]) // HorizontalLineRelative |> bezierCurve({ control1: [265.68767, -74.76644500000002], control2: [265.77327, -84.10056500000002], to: [265.76887000000005, -79.43241500000002]}, %) // CubicBezierRelative -|> lineTo([263.68767, -71.76644500000002], %) // LineRelative -|> lineTo([257.68767, -68.76644500000002], %) // LineRelative +|> line(end = [263.68767, -71.76644500000002]) // LineRelative +|> line(end = [257.68767, -68.76644500000002]) // LineRelative |> bezierCurve({ control1: [240.68767000000003, -68.76644500000002], control2: [251.63750000000002, -68.30105500000002], to: [246.62747000000002, -68.01396500000001]}, %) // CubicBezierRelative // StopRelative -|> lineTo([348.06267, -71.45394500000002], %) // MoveRelative +|> line(end = [348.06267, -71.45394500000002]) // MoveRelative |> bezierCurve({ control1: [336.68767, -78.76644500000002], control2: [342.24112, -73.65657500000002], to: [342.24112, -73.65657500000002]}, %) // CubicBezierRelative |> bezierCurve({ control1: [331.68767, -85.76644500000002], control2: [333.86052, -82.22373500000002], to: [333.86052, -82.22373500000002]}, %) // CubicBezierRelative |> bezierCurve({ control1: [330.68767, -113.76644000000002], control2: [329.44062, -94.75465500000001], to: [330.36224000000004, -104.56387000000002]}, %) // CubicBezierRelative |> bezierCurve({ control1: [333.68767, -125.76644000000002], control2: [331.54987, -120.49367000000002], to: [331.54987, -120.49367000000002]}, %) // CubicBezierRelative |> bezierCurve({ control1: [339.68767, -134.76644000000002], control2: [336.35378000000003, -130.85268000000002], to: [336.35378000000003, -130.85268000000002]}, %) // CubicBezierRelative -|> lineTo([344.68767, -136.76644000000002], %) // LineRelative +|> line(end = [344.68767, -136.76644000000002]) // LineRelative |> bezierCurve({ control1: [354.50017, -136.89144000000002], control2: [347.95588000000004, -136.90388000000002], to: [351.22938000000005, -136.93595000000002]}, %) // CubicBezierRelative |> bezierCurve({ control1: [359.7072, -136.83674000000002], control2: [357.07765, -136.86434000000003], to: [357.07765, -136.86434000000003]}, %) // CubicBezierRelative |> bezierCurve({ control1: [363.68767, -136.76644000000002], control2: [361.02076, -136.81354000000002], to: [362.33431, -136.79034000000001]}, %) // CubicBezierRelative -|> lineTo([364.68767, -133.76644000000002], %) // LineRelative -|> lineTo([369.68767, -132.76644000000002], %) // LineRelative -|> lineTo([374.68767, -127.76644000000002], %) // LineRelative -|> lineTo([375.68767, -125.76644000000002], %) // LineRelative -|> lineTo([378.68767, -124.76644000000002], %) // LineRelative -|> lineTo([381.68767, -119.76644000000002], %) // LineRelative +|> line(end = [364.68767, -133.76644000000002]) // LineRelative +|> line(end = [369.68767, -132.76644000000002]) // LineRelative +|> line(end = [374.68767, -127.76644000000002]) // LineRelative +|> line(end = [375.68767, -125.76644000000002]) // LineRelative +|> line(end = [378.68767, -124.76644000000002]) // LineRelative +|> line(end = [381.68767, -119.76644000000002]) // LineRelative |> bezierCurve({ control1: [383.68767, -90.76644500000002], control2: [383.35291, -110.03795000000002], to: [384.23553000000004, -100.62782000000001]}, %) // CubicBezierRelative |> bezierCurve({ control1: [376.68767, -74.76644500000002], control2: [381.89678000000004, -84.77624500000002], to: [379.89992, -80.12019500000002]}, %) // CubicBezierRelative |> bezierCurve({ control1: [361.68767, -69.76644500000002], control2: [371.66314, -72.44743500000001], to: [367.11478000000005, -70.85187500000002]}, %) // CubicBezierRelative |> bezierCurve({ control1: [348.06267, -71.45394500000002], control2: [353.98599, -69.38331500000002], to: [353.98599, -69.38331500000002]}, %) // CubicBezierRelative // StopRelative -|> lineTo([420.68767, -75.76644500000002], %) // MoveRelative -|> lineTo([414.68767, -78.76644500000002], %) // MoveRelative -|> lineTo([411.68767, -81.76644500000002], %) // MoveRelative +|> line(end = [420.68767, -75.76644500000002]) // MoveRelative +|> line(end = [414.68767, -78.76644500000002]) // MoveRelative +|> line(end = [411.68767, -81.76644500000002]) // MoveRelative |> bezierCurve({ control1: [394.68767, -89.76644500000002], control2: [406.10302, -84.70574500000002], to: [400.49226000000004, -87.27876500000002]}, %) // CubicBezierRelative -|> lineTo([390.68767, -93.76644500000002], %) // LineRelative +|> line(end = [390.68767, -93.76644500000002]) // LineRelative |> bezierCurve({ control1: [387.00017, -105.95394000000002], control2: [388.81932, -97.84915500000002], to: [387.7277, -101.52261000000001]}, %) // CubicBezierRelative |> bezierCurve({ control1: [386.68767, -123.76644000000002], control2: [386.61176, -111.93554000000002], to: [386.45034000000004, -117.77373000000001]}, %) // CubicBezierRelative -|> lineTo([389.68767, -129.76644000000002], %) // LineRelative +|> line(end = [389.68767, -129.76644000000002]) // LineRelative |> bezierCurve({ control1: [401.68767, -140.76644000000002], control2: [393.59112000000005, -133.6699], to: [397.39354000000003, -137.31580000000002]}, %) // CubicBezierRelative -|> lineTo([406.68767, -142.76644000000002], %) // LineRelative +|> line(end = [406.68767, -142.76644000000002]) // LineRelative |> bezierCurve({ control1: [419.18767, -141.64144000000002], control2: [414.16723, -143.08983], to: [414.16723, -143.08983]}, %) // CubicBezierRelative |> bezierCurve({ control1: [431.68767, -133.76644000000002], control2: [424.08865000000003, -139.59937000000002], to: [427.61672000000004, -137.15890000000002]}, %) // CubicBezierRelative |> bezierCurve({ control1: [438.81267, -125.32894000000002], control2: [436.54426, -129.29261000000002], to: [436.54426, -129.29261000000002]}, %) // CubicBezierRelative |> bezierCurve({ control1: [443.68767, -106.76644000000002], control2: [441.36597, -119.11592000000002], to: [442.65924, -113.42420000000001]}, %) // CubicBezierRelative |> bezierCurve({ control1: [442.68767, -87.76644500000002], control2: [443.82181, -100.36380000000001], to: [443.70527000000004, -94.09420500000002]}, %) // CubicBezierRelative |> bezierCurve({ control1: [438.68767, -79.76644500000002], control2: [441.01966000000004, -83.40792500000002], to: [441.01966000000004, -83.40792500000002]}, %) // CubicBezierRelative -|> lineTo([434.68767, -76.76644500000002], %) // LineRelative +|> line(end = [434.68767, -76.76644500000002]) // LineRelative |> bezierCurve({ control1: [420.68767, -75.76644500000002], control2: [428.38627, -75.54725500000002], to: [428.38627, -75.54725500000002]}, %) // CubicBezierRelative -|> lineTo([119.83194, -25.193075], %) // MoveRelative +|> line(end = [119.83194, -25.193075]) // MoveRelative |> bezierCurve({ control1: [126.83194, -26.193075], control2: [122.14194, -25.523075], to: [124.45194000000001, -25.853075]}, %) // CubicBezierRelative |> bezierCurve({ control1: [129.83194, -32.193075], control2: [127.82194, -28.173075], to: [128.81194, -30.153075]}, %) // CubicBezierRelative |> bezierCurve({ control1: [130.83194, -33.193075], control2: [130.16194000000002, -32.523075], to: [130.49194, -32.853075]}, %) // CubicBezierRelative @@ -275,7 +275,7 @@ const svg = startSketchOn('XY') |> bezierCurve({ control1: [118.83194, -26.193075], control2: [116.5899, -41.883314999999996], to: [116.78264, -34.269515]}, %) // CubicBezierRelative |> bezierCurve({ control1: [119.83194, -25.193075], control2: [119.16194, -25.863075000000002], to: [119.49194, -25.533075]}, %) // CubicBezierRelative -|> lineTo([65.254392, -26.686845], %) // MoveRelative +|> line(end = [65.254392, -26.686845]) // MoveRelative |> bezierCurve({ control1: [69.254392, -26.686845], control2: [66.57439199999999, -26.686845], to: [67.894392, -26.686845]}, %) // CubicBezierRelative |> bezierCurve({ control1: [70.254392, -32.686845000000005], control2: [69.584392, -28.666845000000002], to: [69.91439199999999, -30.646845000000003]}, %) // CubicBezierRelative |> bezierCurve({ control1: [69.254392, -35.686845000000005], control2: [69.924392, -33.67684500000001], to: [69.594392, -34.666845]}, %) // CubicBezierRelative @@ -292,7 +292,7 @@ const svg = startSketchOn('XY') |> bezierCurve({ control1: [61.254391999999996, -28.686845000000005], control2: [60.10475399999999, -40.47687500000001], to: [60.373141, -34.855605000000004]}, %) // CubicBezierRelative |> bezierCurve({ control1: [65.254392, -26.686845000000005], control2: [62.574391999999996, -28.026845000000005], to: [63.894391999999996, -27.366845000000005]}, %) // CubicBezierRelative -|> lineTo([185.48371, -31.108985], %) // MoveRelative +|> line(end = [185.48371, -31.108985]) // MoveRelative |> bezierCurve({ control1: [197.48371, -31.108985], control2: [189.48289, -31.028185], to: [193.48463, -31.022985000000002]}, %) // CubicBezierRelative |> bezierCurve({ control1: [198.48371, -36.108985000000004], control2: [197.81371000000001, -32.758985], to: [198.14371, -34.408985]}, %) // CubicBezierRelative |> bezierCurve({ control1: [197.48371, -38.108985000000004], control2: [198.15371, -36.768985], to: [197.82371, -37.428985000000004]}, %) // CubicBezierRelative @@ -312,7 +312,7 @@ const svg = startSketchOn('XY') |> bezierCurve({ control1: [182.48371, -33.108985000000004], control2: [181.35308, -36.41710500000001], to: [181.90996, -34.787735000000005]}, %) // CubicBezierRelative |> bezierCurve({ control1: [185.48371, -31.108985000000004], control2: [183.47371, -32.44898500000001], to: [184.46371, -31.788985000000004]}, %) // CubicBezierRelative -|> lineTo([248.52117, -92.100105], %) // MoveRelative +|> line(end = [248.52117, -92.100105]) // MoveRelative |> bezierCurve({ control1: [252.52117, -92.100105], control2: [249.84117, -92.100105], to: [251.16117, -92.100105]}, %) // CubicBezierRelative |> bezierCurve({ control1: [253.52117, -99.100105], control2: [252.85117000000002, -94.410105], to: [253.18117, -96.720105]}, %) // CubicBezierRelative |> bezierCurve({ control1: [248.89617, -100.8501], control2: [251.99492, -99.677605], to: [250.46867, -100.2551]}, %) // CubicBezierRelative @@ -328,7 +328,7 @@ const svg = startSketchOn('XY') |> bezierCurve({ control1: [236.52117, -97.100105], control2: [236.52117, -98.440105], to: [236.52117, -97.780105]}, %) // CubicBezierRelative |> bezierCurve({ control1: [248.52117, -92.100105], control2: [240.49514000000002, -95.372295], to: [244.49777, -93.709465]}, %) // CubicBezierRelative -|> lineTo([299.09756, -85.781585], %) // MoveRelative +|> line(end = [299.09756, -85.781585]) // MoveRelative |> bezierCurve({ control1: [305.09756, -85.781585], control2: [301.07756, -85.781585], to: [303.05755999999997, -85.781585]}, %) // CubicBezierRelative |> bezierCurve({ control1: [307.09756, -86.781585], control2: [305.75756, -86.111585], to: [306.41756, -86.441585]}, %) // CubicBezierRelative |> bezierCurve({ control1: [308.09756, -97.781585], control2: [307.48978999999997, -90.442425], to: [307.81822999999997, -94.110415]}, %) // CubicBezierRelative @@ -347,7 +347,7 @@ const svg = startSketchOn('XY') |> bezierCurve({ control1: [295.09756, -89.781585], control2: [293.92506, -93.63408500000001], to: [294.50255999999996, -91.736585]}, %) // CubicBezierRelative |> bezierCurve({ control1: [299.09756, -85.781585], control2: [296.41756, -88.46158500000001], to: [297.73756, -87.141585]}, %) // CubicBezierRelative -|> lineTo([419.93938, -96.155625], %) // MoveRelative +|> line(end = [419.93938, -96.155625]) // MoveRelative |> bezierCurve({ control1: [424.75188, -96.218125], control2: [422.32157, -96.186525], to: [422.32157, -96.186525]}, %) // CubicBezierRelative |> bezierCurve({ control1: [425.75188, -102.21812], control2: [425.08188, -98.198125], to: [425.41188000000005, -100.17812]}, %) // CubicBezierRelative |> bezierCurve({ control1: [417.75188, -104.21812], control2: [423.11188000000004, -102.87812], to: [420.47188000000006, -103.53811999999999]}, %) // CubicBezierRelative @@ -364,7 +364,7 @@ const svg = startSketchOn('XY') |> bezierCurve({ control1: [411.75188, -97.218125], control2: [410.75188, -99.218125], to: [410.75188, -99.218125]}, %) // CubicBezierRelative |> bezierCurve({ control1: [419.93938, -96.155625], control2: [414.75188, -96.218125], to: [414.75188, -96.218125]}, %) // CubicBezierRelative -|> lineTo([198.29461, -92.109945], %) // MoveRelative +|> line(end = [198.29461, -92.109945]) // MoveRelative |> bezierCurve({ control1: [202.29461, -92.109945], control2: [199.61461, -92.109945], to: [200.93461, -92.109945]}, %) // CubicBezierRelative |> bezierCurve({ control1: [205.29461, -97.109945], control2: [203.28461000000001, -93.759945], to: [204.27461, -95.409945]}, %) // CubicBezierRelative |> bezierCurve({ control1: [205.29461, -104.10994], control2: [205.29461, -99.419945], to: [205.29461, -101.72994]}, %) // CubicBezierRelative @@ -385,7 +385,7 @@ const svg = startSketchOn('XY') |> bezierCurve({ control1: [191.29461, -96.109945], control2: [188.61461, -99.45994499999999], to: [189.93461, -97.809945]}, %) // CubicBezierRelative |> bezierCurve({ control1: [198.29461, -92.109945], control2: [193.60461, -94.789945], to: [195.91461, -93.469945]}, %) // CubicBezierRelative -|> lineTo([0, -0], %) // MoveRelative +|> line(end = [0, -0]) // MoveRelative |> bezierCurve({ control1: [3, -1], control2: [0.99, -0.33], to: [1.98, -0.66]}, %) // CubicBezierRelative |> bezierCurve({ control1: [3, -4], control2: [3, -1.99], to: [3, -2.98]}, %) // CubicBezierRelative |> bezierCurve({ control1: [8, -4], control2: [4.65, -4], to: [6.3, -4]}, %) // CubicBezierRelative @@ -400,7 +400,7 @@ const svg = startSketchOn('XY') |> bezierCurve({ control1: [-1, -5], control2: [-3.01, -5], to: [-2.02, -5]}, %) // CubicBezierRelative |> bezierCurve({ control1: [0, -0], control2: [-0.6699999999999999, -3.35], to: [-0.33999999999999997, -1.7000000000000002]}, %) // CubicBezierRelative -|> lineTo([0, -0], %) // MoveRelative +|> line(end = [0, -0]) // MoveRelative |> bezierCurve({ control1: [7, -0], control2: [2.31, -0], to: [4.62, -0]}, %) // CubicBezierRelative |> bezierCurve({ control1: [17, -5], control2: [12.3125, -2.3125], to: [12.3125, -2.3125]}, %) // CubicBezierRelative |> bezierCurve({ control1: [19, -8], control2: [17.99, -6.485], to: [17.99, -6.485]}, %) // CubicBezierRelative @@ -412,7 +412,7 @@ const svg = startSketchOn('XY') |> bezierCurve({ control1: [1, -5], control2: [4.35, -5.67], to: [2.7, -5.34] }, %) // CubicBezierAbsolute |> bezierCurve({ control1: [0, -0], control2: [0.67, -3.35], to: [0.34, -1.7] }, %) // CubicBezierAbsolute -|> lineTo([-19.467588, -31.053017], %) // MoveRelative +|> line(end = [-19.467588, -31.053017]) // MoveRelative |> bezierCurve({ control1: [-12.467588, -32.053017], control2: [-17.157588, -31.383017], to: [-14.847587999999998, -31.713017]}, %) // CubicBezierRelative |> bezierCurve({ control1: [-10.467588, -34.053017], control2: [-11.807587999999999, -32.713016999999994], to: [-11.147587999999999, -33.373017]}, %) // CubicBezierRelative |> bezierCurve({ control1: [-10.467588, -39.053017], control2: [-10.467588, -35.703016999999996], to: [-10.467588, -37.353016999999994]}, %) // CubicBezierRelative @@ -425,7 +425,7 @@ const svg = startSketchOn('XY') |> bezierCurve({ control1: [-21.467588, -32.053017], control2: [-21.467588, -33.393017], to: [-21.467588, -32.733017]}, %) // CubicBezierRelative |> bezierCurve({ control1: [-19.467588, -31.053016999999997], control2: [-20.807588, -31.723017], to: [-20.147588, -31.393016999999997]}, %) // CubicBezierRelative -|> lineTo([0, -0], %) // MoveRelative +|> line(end = [0, -0]) // MoveRelative |> bezierCurve({ control1: [16, -3], control2: [5.4494016, -0.77848594], to: [10.65681, -1.7240142]}, %) // CubicBezierRelative |> bezierCurve({ control1: [18, -4], control2: [16.66, -3.33], to: [17.32, -3.66]}, %) // CubicBezierRelative |> bezierCurve({ control1: [18, -6], control2: [18, -4.66], to: [18, -5.32]}, %) // CubicBezierRelative @@ -437,7 +437,7 @@ const svg = startSketchOn('XY') |> bezierCurve({ control1: [-4, -3], control2: [-3.33, -5.68], to: [-3.66, -4.36] }, %) // CubicBezierAbsolute |> bezierCurve({ control1: [0, -0], control2: [-2.68, -2.01], to: [-1.36, -1.02] }, %) // CubicBezierAbsolute -|> lineTo([0, -0], %) // MoveAbsolute +|> line(end = [0, -0]) // MoveAbsolute |> bezierCurve({ control1: [7, -0], control2: [2.31, -0], to: [4.62, -0] }, %) // CubicBezierAbsolute |> bezierCurve({ control1: [7, -4], control2: [7, -1.32], to: [7, -2.64] }, %) // CubicBezierAbsolute |> bezierCurve({ control1: [9, -5], control2: [7.66, -4.33], to: [8.32, -4.66] }, %) // CubicBezierAbsolute @@ -451,7 +451,7 @@ const svg = startSketchOn('XY') |> bezierCurve({ control1: [0, -3], control2: [1.34, -3], to: [0.68, -3] }, %) // CubicBezierAbsolute |> bezierCurve({ control1: [0, -0], control2: [0, -2.01], to: [0, -1.02] }, %) // CubicBezierAbsolute -|> lineTo([0, -0], %) // MoveRelative +|> line(end = [0, -0]) // MoveRelative |> bezierCurve({ control1: [1, -4], control2: [0.33, -1.32], to: [0.66, -2.64]}, %) // CubicBezierRelative |> bezierCurve({ control1: [9, -4], control2: [3.64, -4], to: [6.28, -4]}, %) // CubicBezierRelative |> bezierCurve({ control1: [12, -1], control2: [9.99, -3.01], to: [10.98, -2.02]}, %) // CubicBezierRelative @@ -467,4 +467,4 @@ const svg = startSketchOn('XY') |> bezierCurve({ control1: [-4, -3], control2: [-2.66, -3.67], to: [-3.32, -3.34] }, %) // CubicBezierAbsolute |> bezierCurve({ control1: [0, -2], control2: [-2.68, -2.67], to: [-1.36, -2.34] }, %) // CubicBezierAbsolute |> bezierCurve({ control1: [0, -0], control2: [0, -1.34], to: [0, -0.68] }, %) // CubicBezierAbsolute -|> close(%) +|> close() diff --git a/src/wasm-lib/tests/executor/inputs/poop_chute.kcl b/src/wasm-lib/tests/executor/inputs/poop_chute.kcl index cd6c79a11d..5ee530619b 100644 --- a/src/wasm-lib/tests/executor/inputs/poop_chute.kcl +++ b/src/wasm-lib/tests/executor/inputs/poop_chute.kcl @@ -26,7 +26,7 @@ sketch001 = startSketchOn('-YZ') |> xLineTo(0, %) |> yLineTo(segEndY(seg01), %) |> angledLineToY({ angle: 180 - 45, to: 0 }, %) - |> close(%) + |> close() part001 = revolve({ angle: 90, axis: { @@ -54,5 +54,5 @@ sketch002 = startSketchOn('-YZ') |> xLineTo(0, %) |> yLineTo(segEndY(seg02), %) |> angledLineToY({ angle: 180 - 45, to: 0 }, %) - |> close(%) - |> extrude(back_length - height, %) \ No newline at end of file + |> close() + |> extrude(length = back_length - height) \ No newline at end of file diff --git a/src/wasm-lib/tests/executor/inputs/riddle.kcl b/src/wasm-lib/tests/executor/inputs/riddle.kcl index a34f88895c..e917f03a3f 100644 --- a/src/wasm-lib/tests/executor/inputs/riddle.kcl +++ b/src/wasm-lib/tests/executor/inputs/riddle.kcl @@ -8,11 +8,11 @@ fn p = (xs, ys) => { let oy = 35 - (m(ys) % 70) const r = startSketchOn('XZ') |> startProfileAt([ox, oy], %) - |> line([1, 0], %) - |> line([0, -1], %) - |> line([-1, 0], %) - |> close(%) - |> extrude(1, %) + |> line(to = [1, 0]) + |> line(to = [0, -1]) + |> line(to = [-1, 0]) + |> close() + |> extrude(length = 1) return r } p(177533, 177533) diff --git a/src/wasm-lib/tests/executor/inputs/riddle_small.kcl b/src/wasm-lib/tests/executor/inputs/riddle_small.kcl index c234417bf2..ebd295f82c 100644 --- a/src/wasm-lib/tests/executor/inputs/riddle_small.kcl +++ b/src/wasm-lib/tests/executor/inputs/riddle_small.kcl @@ -10,8 +10,8 @@ let ys = 71816 let oy = 35 - (t(ys) % 70) const r = startSketchOn('XZ') |> startProfileAt([ox, oy], %) - |> line([1, 0], %) - |> line([0, -1], %) - |> line([-1, 0], %) - |> close(%) - |> extrude(1, %) + |> line(to = [1, 0]) + |> line(to = [0, -1]) + |> line(to = [-1, 0]) + |> close() + |> extrude(length = 1) diff --git a/src/wasm-lib/tests/executor/inputs/router-template-slate.kcl b/src/wasm-lib/tests/executor/inputs/router-template-slate.kcl index 9ae75379f9..eaff0d9c95 100644 --- a/src/wasm-lib/tests/executor/inputs/router-template-slate.kcl +++ b/src/wasm-lib/tests/executor/inputs/router-template-slate.kcl @@ -11,7 +11,7 @@ const length001 = slateWidthHalf - radius const length002 = depth + minClampingDistance const sketch001 = startSketchOn('XZ') |> startProfileAt([0, depth - templateGap], %) - |> xLine(length001, %, $seg01) + |> xline(to = length001, tag = $seg01) |> arc({ angle_end: 0, angle_start: 90, @@ -19,7 +19,7 @@ const sketch001 = startSketchOn('XZ') }, %) |> yLineTo(-templateGap * 2 - (templateDiameter / 2), %, $seg05) |> xLineTo(slateWidthHalf + templateThickness, %, $seg04) - |> yLine(-length002, %, $seg03) + |> yline(to = -length002, tag = $seg03) |> xLineTo(0, %, $seg02) |> xLine(-segLen(seg02, %), %) |> yLine(segLen(seg03, %), %) @@ -30,15 +30,15 @@ const sketch001 = startSketchOn('XZ') angle_start: 180, radius: radius - templateGap }, %) - |> lineTo([profileStartX(%), profileStartY(%)], %) - |> close(%) -const extrude001 = extrude(5, sketch001) + |> line(end = [profileStartX(%), profileStartY(%)]) + |> close() +const extrude001 = extrude(sketch001, length = 5) const sketch002 = startSketchOn(extrude001, 'START') |> startProfileAt([ -slateWidthHalf, -templateGap * 2 - (templateDiameter / 2) ], %) - |> xLine(-7, %, $rectangleSegmentA001) + |> xline(to = -7, tag = $rectangleSegmentA001) |> angledLine([ segAng(rectangleSegmentA001, %) + 90, minClampingDistance @@ -47,15 +47,15 @@ const sketch002 = startSketchOn(extrude001, 'START') segAng(rectangleSegmentA001, %), -segLen(rectangleSegmentA001, %) ], %, $rectangleSegmentC001) - |> lineTo([profileStartX(%), profileStartY(%)], %) - |> close(%) -const extrude002 = extrude(7.5, sketch002) + |> line(end = [profileStartX(%), profileStartY(%)]) + |> close() +const extrude002 = extrude(sketch002, length = 7.5) const sketch003 = startSketchOn(extrude001, 'START') |> startProfileAt([ slateWidthHalf, -templateGap * 2 - (templateDiameter / 2) ], %) - |> xLine(7, %, $rectangleSegmentA002) + |> xline(to = 7, tag = $rectangleSegmentA002) |> angledLine([ segAng(rectangleSegmentA002, %) - 90, minClampingDistance @@ -64,6 +64,6 @@ const sketch003 = startSketchOn(extrude001, 'START') segAng(rectangleSegmentA002, %), -segLen(rectangleSegmentA002, %) ], %) - |> lineTo([profileStartX(%), profileStartY(%)], %) - |> close(%) -const extrude003 = extrude(7.5, sketch003) + |> line(end = [profileStartX(%), profileStartY(%)]) + |> close() +const extrude003 = extrude(sketch003, length = 7.5) diff --git a/src/wasm-lib/tests/executor/inputs/scoped-tags.kcl b/src/wasm-lib/tests/executor/inputs/scoped-tags.kcl index 81619f55a6..69e148eef4 100644 --- a/src/wasm-lib/tests/executor/inputs/scoped-tags.kcl +++ b/src/wasm-lib/tests/executor/inputs/scoped-tags.kcl @@ -10,8 +10,8 @@ fn rect = (origin) => { segAng(rectangleSegmentA001), -segLen(rectangleSegmentA001) ], %, $rectangleSegmentC001) - |> lineTo([profileStartX(%), profileStartY(%)], %) - |> close(%) + |> line(end = [profileStartX(%), profileStartY(%)]) + |> close() } rect([0, 0]) diff --git a/src/wasm-lib/tests/executor/inputs/server-rack-heavy.kcl b/src/wasm-lib/tests/executor/inputs/server-rack-heavy.kcl index 582658f187..b8b051217f 100644 --- a/src/wasm-lib/tests/executor/inputs/server-rack-heavy.kcl +++ b/src/wasm-lib/tests/executor/inputs/server-rack-heavy.kcl @@ -28,8 +28,8 @@ fn caster = (originStart) => { |> xLine(3.543, %) |> yLine(3.543, %) |> xLine(-3.543, %) - |> lineTo([profileStartX(%), profileStartY(%)], %) - |> close(%) + |> line(end = [profileStartX(%), profileStartY(%)]) + |> close() |> hole(circle({ center: [ (3.543 - 2.756) / 2, (3.543 - 2.756) / 2 @@ -46,7 +46,7 @@ fn caster = (originStart) => { (3.543 - 2.756) / 2 + 2.756, (3.543 - 2.756) / 2 + 2.756 ], radius: 8.8 / 2 / 25.4 }, %), %) - |> extrude(-.25, %) + |> extrude(length = -.25) const sketch002c = startSketchOn(sketch001c, 'START') |> startProfileAt([-originStart[0], 2.2 + originStart[1]], %) @@ -55,8 +55,8 @@ fn caster = (originStart) => { angle_end: 330, radius: 3.2 / 2 }, %) - |> close(%) - |> extrude(3.1, %) + |> close() + |> extrude(length = 3.1) const plane002c = { plane: { @@ -72,7 +72,7 @@ fn caster = (originStart) => { } const sketch003c = startSketchOn(plane002c) |> circle({ center: [0, 1.2], radius 2.48 / 2 }, %) - const examplec = extrude(-1 - (3 / 16), sketch003c) + const examplec = extrude(sketch003c, length = -1 - (3 / 16)) return examplec } @@ -112,10 +112,10 @@ const sketch001l = startSketchOn(plane001) |> startProfileAt([0, 0], %) |> xLine(serverDepth + .8, %) |> angledLineToY({ angle: -45, to: 1 }, %) - |> xLine(-serverDepth + 2 - .8, %, $seg01) - |> lineTo([profileStartX(%), profileStartY(%)], %) - |> close(%) -const extrude001l = extrude(1, sketch001l) + |> xline(to = -serverDepth + 2 - .8, tag = $seg01) + |> line(end = [profileStartX(%), profileStartY(%)]) + |> close() +const extrude001l = extrude(sketch001l, length = 1) const sketch002l = startSketchOn(plane001) |> startProfileAt([serverDepth + .8, 0], %) @@ -125,24 +125,24 @@ const sketch002l = startSketchOn(plane001) to: serverDepth - 1 + .8 }, %) |> yLine(-railHeight * 1.75, %) - |> lineTo([profileStartX(%), profileStartY(%)], %) - |> close(%) -const extrude002l = extrude(1, sketch002l) + |> line(end = [profileStartX(%), profileStartY(%)]) + |> close() +const extrude002l = extrude(sketch002l, length = 1) const sketch003l = startSketchOn(plane001) |> startProfileAt([ serverDepth + .8, railHeight * 1.75 + 2 ], %) - |> xLine(-serverDepth - .8, %, $seg02) + |> xline(to = -serverDepth - .8, tag = $seg02) |> angledLineToY({ angle: -45, to: railHeight * 1.75 - 1 + 2 }, %) |> xLine(serverDepth - 2 + .8, %) - |> lineTo([profileStartX(%), profileStartY(%)], %) - |> close(%) -const extrude003l = extrude(1, sketch003l) + |> line(end = [profileStartX(%), profileStartY(%)]) + |> close() +const extrude003l = extrude(sketch003l, length = 1) const sketch004l = startSketchOn(plane001) |> startProfileAt([0, 0], %) @@ -152,18 +152,18 @@ const sketch004l = startSketchOn(plane001) to: railHeight * 1.75 + 2 - 1 }, %) |> yLine(-railHeight * 1.75, %) - |> lineTo([profileStartX(%), profileStartY(%)], %) - |> close(%) -const extrude004l = extrude(1, sketch004l) + |> line(end = [profileStartX(%), profileStartY(%)]) + |> close() +const extrude004l = extrude(sketch004l, length = 1) const sketch005l = startSketchOn(plane001) |> startProfileAt([serverDepth - 1.25, 1], %) - |> line([-serverDepth + 2.25, railHeight * 1.75], %, $lineToIntersect4) + |> line(to = [-serverDepth + 2.25, railHeight * 1.75], tag = $lineToIntersect4) |> xLine(1, %) - |> line([serverDepth - 2.25, -railHeight * 1.75], %, $lineToIntersect5) - |> lineTo([profileStartX(%), profileStartY(%)], %) - |> close(%) -const extrude005l = extrude(1, sketch005l) + |> line(to = [serverDepth - 2.25, -railHeight * 1.75], tag = $lineToIntersect5) + |> line(end = [profileStartX(%), profileStartY(%)]) + |> close() +const extrude005l = extrude(sketch005l, length = 1) const sketch006l = startSketchOn(plane001) |> startProfileAt([1, 1], %) @@ -174,9 +174,9 @@ const sketch006l = startSketchOn(plane001) }, %) |> angledLine({ angle: -70, length: 1.414 }, %) |> angledLineToY({ angle: 70 + 180, to: 2 - 1 }, %) - |> lineTo([profileStartX(%), profileStartY(%)], %) - |> close(%) -const extrude006l = extrude(1, sketch006l) + |> line(end = [profileStartX(%), profileStartY(%)]) + |> close() +const extrude006l = extrude(sketch006l, length = 1) const sketch007l = startSketchOn(plane001) |> startProfileAt([ @@ -193,9 +193,9 @@ const sketch007l = startSketchOn(plane001) angle: 70 + 180, to: railHeight * 1.75 + 1 }, %) - |> lineTo([profileStartX(%), profileStartY(%)], %) - |> close(%) -const extrude007l = extrude(1, sketch007l) + |> line(end = [profileStartX(%), profileStartY(%)]) + |> close() +const extrude007l = extrude(sketch007l, length = 1) // right wall const plane002 = { @@ -215,31 +215,31 @@ const sketch001w = startSketchOn(plane002) |> startProfileAt([0, 0], %) |> xLine(depth, %) |> angledLineToY({ angle: -45, to: 1 }, %) - |> xLine(-depth + 2, %, $seg01w) - |> lineTo([profileStartX(%), profileStartY(%)], %) - |> close(%) -const extrude001w = extrude(1, sketch001w) + |> xline(to = -depth + 2, tag = $seg01w) + |> line(end = [profileStartX(%), profileStartY(%)]) + |> close() +const extrude001w = extrude(sketch001w, length = 1) const sketch002w = startSketchOn(plane002) |> startProfileAt([depth, 0], %) |> yLine(railHeight * 1.75 + 2, %) |> angledLineToX({ angle: -135, to: depth - 1 }, %) |> yLine(-railHeight * 1.75, %) - |> lineTo([profileStartX(%), profileStartY(%)], %) - |> close(%) -const extrude002w = extrude(1, sketch002w) + |> line(end = [profileStartX(%), profileStartY(%)]) + |> close() +const extrude002w = extrude(sketch002w, length = 1) const sketch003w = startSketchOn(plane002) |> startProfileAt([depth, railHeight * 1.75 + 2], %) - |> xLine(-depth, %, $seg02w) + |> xline(to = -depth, tag = $seg02w) |> angledLineToY({ angle: -45, to: railHeight * 1.75 - 1 + 2 }, %) |> xLine(depth - 2, %) - |> lineTo([profileStartX(%), profileStartY(%)], %) - |> close(%) -const extrude003w = extrude(1, sketch003w) + |> line(end = [profileStartX(%), profileStartY(%)]) + |> close() +const extrude003w = extrude(sketch003w, length = 1) const sketch004w = startSketchOn(plane002) |> startProfileAt([0, 0], %) @@ -249,18 +249,18 @@ const sketch004w = startSketchOn(plane002) to: railHeight * 1.75 + 2 - 1 }, %) |> yLine(-railHeight * 1.75, %) - |> lineTo([profileStartX(%), profileStartY(%)], %) - |> close(%) -const extrude004w = extrude(1, sketch004w) + |> line(end = [profileStartX(%), profileStartY(%)]) + |> close() +const extrude004w = extrude(sketch004w, length = 1) const sketch005w = startSketchOn(plane002) |> startProfileAt([1, 40.6 + 1.75 / 2], %) |> angledLine({ angle: -23, length: 35.5 }, %) |> angledLine({ angle: -23 + 90 + 45, length: 1.413 }, %) |> angledLineToX({ angle: -23, to: 1 }, %, $lineToIntersect) - |> lineTo([profileStartX(%), profileStartY(%)], %) - |> close(%) -const extrude005w = extrude(1, sketch005w) + |> line(end = [profileStartX(%), profileStartY(%)]) + |> close() +const extrude005w = extrude(sketch005w, length = 1) const sketch006w = startSketchOn(plane002) |> startProfileAt([ @@ -274,22 +274,22 @@ const sketch006w = startSketchOn(plane002) intersectTag: lineToIntersect, offset: 0 }, %, $lineToIntersect2) - |> lineTo([profileStartX(%), profileStartY(%)], %) - |> close(%) -const extrude006w = extrude(1, sketch006w) + |> line(end = [profileStartX(%), profileStartY(%)]) + |> close() +const extrude006w = extrude(sketch006w, length = 1) const sketch007w = startSketchOn(plane002) |> startProfileAt([depth - 1, 60.65 + 1.75 / 2], %) - |> angledLine({ angle: -23 + 180, length: 34.93 }, %, $lineToIntersect3) + |> angledline(to = { angle: -23 + 180, length: 34.93 }, tag = $lineToIntersect3) |> angledLine({ angle: 23 - 90, length: 1.414 }, %) |> angledLineThatIntersects({ angle: -23 + 180, intersectTag: lineToIntersect2, offset: 0 }, %) - |> lineTo([profileStartX(%), profileStartY(%)], %) - |> close(%) -const extrude007w = extrude(1, sketch007w) + |> line(end = [profileStartX(%), profileStartY(%)]) + |> close() +const extrude007w = extrude(sketch007w, length = 1) const sketch008w = startSketchOn(plane002) |> startProfileAt([1, 41.7 + 1.75 / 2], %) @@ -304,27 +304,27 @@ const sketch008w = startSketchOn(plane002) intersectTag: lineToIntersect, offset: 0 }, %) - |> lineTo([profileStartX(%), profileStartY(%)], %) - |> close(%) -const extrude008w = extrude(1, sketch008w) + |> line(end = [profileStartX(%), profileStartY(%)]) + |> close() +const extrude008w = extrude(sketch008w, length = 1) const sketch009w = startSketchOn(plane002) |> startProfileAt([31.2, 33.3 + 1.75 / 2], %) |> angledLine({ angle: -23 - 45, length: 1.414 }, %) |> angledLine({ angle: 90 - 23, length: 28 }, %) |> angledLine({ angle: -23 + 45, length: -1.414 }, %) - |> lineTo([profileStartX(%), profileStartY(%)], %) - |> close(%) -const extrude009w = extrude(1, sketch009w) + |> line(end = [profileStartX(%), profileStartY(%)]) + |> close() +const extrude009w = extrude(sketch009w, length = 1) const sketch010w = startSketchOn(plane002) |> startProfileAt([31.2, 33.3 + 1.75 / 2], %) |> angledLine({ angle: -23 - 45, length: 1.414 }, %) |> angledLine({ angle: 180 - 23, length: 28 }, %) |> angledLine({ angle: -23 + 45, length: 1.414 }, %) - |> lineTo([profileStartX(%), profileStartY(%)], %) - |> close(%) -const extrude010w = extrude(1, sketch010w) + |> line(end = [profileStartX(%), profileStartY(%)]) + |> close() +const extrude010w = extrude(sketch010w, length = 1) const sketch011w = startSketchOn(plane002) |> startProfileAt([ @@ -334,9 +334,9 @@ const sketch011w = startSketchOn(plane002) |> angledLine({ angle: 90 - 23, length: 28 - 2 }, %) |> angledLine({ angle: -23 - 45, length: -1.414 }, %) |> angledLine({ angle: 90 - 23 + 180, length: 28 }, %) - |> lineTo([profileStartX(%), profileStartY(%)], %) - |> close(%) -const extrude011w = extrude(1, sketch011w) + |> line(end = [profileStartX(%), profileStartY(%)]) + |> close() +const extrude011w = extrude(sketch011w, length = 1) const sketch012w = startSketchOn(plane002) |> startProfileAt([ @@ -346,9 +346,9 @@ const sketch012w = startSketchOn(plane002) |> angledLine({ angle: 180 - 23, length: 28 - 2 }, %) |> angledLine({ angle: -23 - 45, length: -1.414 }, %) |> angledLine({ angle: -23, length: 28 }, %) - |> lineTo([profileStartX(%), profileStartY(%)], %) - |> close(%) -const extrude012w = extrude(1, sketch012w) + |> line(end = [profileStartX(%), profileStartY(%)]) + |> close() +const extrude012w = extrude(sketch012w, length = 1) const sketch013w = startSketchOn(plane002) |> startProfileAt([ @@ -358,9 +358,9 @@ const sketch013w = startSketchOn(plane002) |> angledLine({ angle: -23, length: 1 }, %) |> angledLineToX({ angle: -23 + 90, to: 1 }, %) |> yLine(2.56, %) - |> lineTo([profileStartX(%), profileStartY(%)], %) - |> close(%) -const extrude013w = extrude(1, sketch013w) + |> line(end = [profileStartX(%), profileStartY(%)]) + |> close() +const extrude013w = extrude(sketch013w, length = 1) const sketch014w = startSketchOn(plane002) |> startProfileAt([ @@ -370,9 +370,9 @@ const sketch014w = startSketchOn(plane002) |> angledLine({ angle: -23 - 90, length: 36 / 2 }, %) |> angledLine({ angle: -23, length: 1 }, %) |> angledLine({ angle: -23 - 90, length: -36 / 2 }, %) - |> lineTo([profileStartX(%), profileStartY(%)], %) - |> close(%) -const extrude014w = extrude(1, sketch014w) + |> line(end = [profileStartX(%), profileStartY(%)]) + |> close() +const extrude014w = extrude(sketch014w, length = 1) const sketch015w = startSketchOn(plane002) |> startProfileAt([ @@ -382,9 +382,9 @@ const sketch015w = startSketchOn(plane002) |> angledLine({ angle: -23 - 90, length: 36 / 2 }, %) |> angledLine({ angle: -23, length: 1 }, %) |> angledLine({ angle: -23 - 90, length: -36 / 2 }, %) - |> lineTo([profileStartX(%), profileStartY(%)], %) - |> close(%) -const extrude015w = extrude(1, sketch015w) + |> line(end = [profileStartX(%), profileStartY(%)]) + |> close() +const extrude015w = extrude(sketch015w, length = 1) const sketch016w = startSketchOn(plane002) |> startProfileAt([ @@ -394,9 +394,9 @@ const sketch016w = startSketchOn(plane002) |> angledLine({ angle: -23 - 90, length: 36 / 2 }, %) |> angledLine({ angle: -23, length: 1 }, %) |> angledLine({ angle: -23 - 90, length: -36 / 2 }, %) - |> lineTo([profileStartX(%), profileStartY(%)], %) - |> close(%) -const extrude016w = extrude(1, sketch016w) + |> line(end = [profileStartX(%), profileStartY(%)]) + |> close() +const extrude016w = extrude(sketch016w, length = 1) const sketch017w = startSketchOn(plane002) |> startProfileAt([ @@ -414,9 +414,9 @@ const sketch017w = startSketchOn(plane002) angleEnd: -23, radius: 7 / 2 + 1 }, %) - |> lineTo([profileStartX(%), profileStartY(%)], %) - |> close(%) -const extrude017w = extrude(1, sketch017w) + |> line(end = [profileStartX(%), profileStartY(%)]) + |> close() +const extrude017w = extrude(sketch017w, length = 1) const sketch018w = startSketchOn(plane002) |> startProfileAt([ @@ -434,18 +434,18 @@ const sketch018w = startSketchOn(plane002) angleEnd: -23, radius: 7 / 2 + 1 }, %) - |> lineTo([profileStartX(%), profileStartY(%)], %) - |> close(%) -const extrude018w = extrude(1, sketch018w) + |> line(end = [profileStartX(%), profileStartY(%)]) + |> close() +const extrude018w = extrude(sketch018w, length = 1) const sketch019w = startSketchOn(plane002) |> startProfileAt([1, 27.8 + 1.75 / 2], %) |> angledLine({ angle: -23, length: 7 }, %) |> angledLine({ angle: -23 + 90, length: -1 }, %) |> angledLineToX({ angle: -23, to: 1 }, %) - |> lineTo([profileStartX(%), profileStartY(%)], %) - |> close(%) -const extrude019w = extrude(1, sketch019w) + |> line(end = [profileStartX(%), profileStartY(%)]) + |> close() +const extrude019w = extrude(sketch019w, length = 1) const sketch020w = startSketchOn(plane002) |> startProfileAt([ @@ -455,18 +455,18 @@ const sketch020w = startSketchOn(plane002) |> angledLine({ angle: -23, length: 7 }, %) |> angledLine({ angle: -23 + 90, length: -1 }, %) |> angledLine({ angle: -23 + 180, length: 7 }, %) - |> lineTo([profileStartX(%), profileStartY(%)], %) - |> close(%) -const extrude020w = extrude(1, sketch020w) + |> line(end = [profileStartX(%), profileStartY(%)]) + |> close() +const extrude020w = extrude(sketch020w, length = 1) const sketch021w = startSketchOn(plane002) |> startProfileAt([1, 21.9], %) |> angledLineToX({ angle: -23, to: depth - 1 }, %) |> yLine(-1.1, %) |> angledLineToX({ angle: -23, to: 1 }, %) - |> lineTo([profileStartX(%), profileStartY(%)], %) - |> close(%) -const extrude021w = extrude(1, sketch021w) + |> line(end = [profileStartX(%), profileStartY(%)]) + |> close() +const extrude021w = extrude(sketch021w, length = 1) const sketch022w = startSketchOn(plane002) |> startProfileAt([depth - 1, 74.1], %) @@ -476,9 +476,9 @@ const sketch022w = startSketchOn(plane002) }, %) |> xLine(-2.56, %) |> angledLineToX({ angle: -23, to: depth - 1 }, %) - |> lineTo([profileStartX(%), profileStartY(%)], %) - |> close(%) -const extrude022w = extrude(1, sketch022w) + |> line(end = [profileStartX(%), profileStartY(%)]) + |> close() +const extrude022w = extrude(sketch022w, length = 1) const sketch023w = startSketchOn(plane002) |> startProfileAt([1, 69.53 + 1.75], %) @@ -488,27 +488,27 @@ const sketch023w = startSketchOn(plane002) }, %) |> xLine(1.086, %) |> angledLineToX({ angle: 90 - 23, to: 1 }, %) - |> lineTo([profileStartX(%), profileStartY(%)], %) - |> close(%) -const extrude023w = extrude(1, sketch023w) + |> line(end = [profileStartX(%), profileStartY(%)]) + |> close() +const extrude023w = extrude(sketch023w, length = 1) const sketch024w = startSketchOn(plane002) |> startProfileAt([1, 16.5], %) |> angledLineToY({ angle: -23, to: 1 }, %) |> xLine(-2.56, %) |> angledLineToX({ angle: -23, to: 1 }, %) - |> lineTo([profileStartX(%), profileStartY(%)], %) - |> close(%) -const extrude024w = extrude(1, sketch024w) + |> line(end = [profileStartX(%), profileStartY(%)]) + |> close() +const extrude024w = extrude(sketch024w, length = 1) const sketch025w = startSketchOn(plane002) |> startProfileAt([1, 4], %) |> angledLineToY({ angle: -23, to: 1 }, %) |> xLine(-2.56, %) |> angledLineToX({ angle: -23, to: 1 }, %) - |> lineTo([profileStartX(%), profileStartY(%)], %) - |> close(%) -const extrude025w = extrude(1, sketch025w) + |> line(end = [profileStartX(%), profileStartY(%)]) + |> close() +const extrude025w = extrude(sketch025w, length = 1) // Base plane of rack const plane003 = { @@ -522,46 +522,46 @@ const plane003 = { const sketch005 = startSketchOn(plane003) |> startProfileAt([width - 1, 0], %) - |> line([-width + 2, 3], %) - |> line([0, 1], %) - |> line([width - 2, -3], %) - |> lineTo([profileStartX(%), profileStartY(%)], %) - |> close(%) + |> line(to = [-width + 2, 3]) + |> line(to = [0, 1]) + |> line(to = [width - 2, -3]) + |> line(end = [profileStartX(%), profileStartY(%)]) + |> close() -const extrude005 = extrude(1, sketch005) +const extrude005 = extrude(sketch005, length = 1) const sketch006 = startSketchOn(plane003) |> startProfileAt([width - 1, 0 + 2.756], %) - |> line([-width + 2, 3], %) - |> line([0, 1], %) - |> line([width - 2, -3], %) - |> lineTo([profileStartX(%), profileStartY(%)], %) - |> close(%) + |> line(to = [-width + 2, 3]) + |> line(to = [0, 1]) + |> line(to = [width - 2, -3]) + |> line(end = [profileStartX(%), profileStartY(%)]) + |> close() -const extrude006 = extrude(1, sketch006) +const extrude006 = extrude(sketch006, length = 1) const sketch007 = startSketchOn(plane003) |> startProfileAt([width - 1, depth], %) - |> line([-width + 1, -depth + serverDepth + 3.8], %) - |> line([1, 0], %) - |> line([0, -.75], %) + |> line(to = [-width + 1, -depth + serverDepth + 3.8]) + |> line(to = [1, 0]) + |> line(to = [0, -.75]) |> line([ width - 2, depth - serverDepth - 5 + .6 ], %) - |> lineTo([profileStartX(%), profileStartY(%)], %) - |> close(%) -const extrude007 = extrude(1, sketch007) + |> line(end = [profileStartX(%), profileStartY(%)]) + |> close() +const extrude007 = extrude(sketch007, length = 1) const sketch008 = startSketchOn(plane003) |> startProfileAt([width - 1, depth - 2.8], %) - |> line([-width + 2, -depth + serverDepth + 4.4], %) - |> line([0, -1.32], %) - |> line([width - 2, depth - serverDepth - 4.4], %) - |> lineTo([profileStartX(%), profileStartY(%)], %) - |> close(%) + |> line(to = [-width + 2, -depth + serverDepth + 4.4]) + |> line(to = [0, -1.32]) + |> line(to = [width - 2, depth - serverDepth - 4.4]) + |> line(end = [profileStartX(%), profileStartY(%)]) + |> close() -const extrude008 = extrude(1, sketch008) +const extrude008 = extrude(sketch008, length = 1) // Top Plane const plane004 = { @@ -575,45 +575,45 @@ const plane004 = { const sketch005t = startSketchOn(plane004) |> startProfileAt([width - 1, 0], %) - |> line([-width + 2, 3], %) - |> line([0, 1], %) - |> line([width - 2, -3], %) - |> lineTo([profileStartX(%), profileStartY(%)], %) - |> close(%) + |> line(to = [-width + 2, 3]) + |> line(to = [0, 1]) + |> line(to = [width - 2, -3]) + |> line(end = [profileStartX(%), profileStartY(%)]) + |> close() -const extrude005t = extrude(-1, sketch005t) +const extrude005t = extrude(sketch005t, length = -1) const sketch007t = startSketchOn(plane004) |> startProfileAt([width - 1, depth], %) - |> line([-width + 1, -depth + serverDepth + 3.8], %) - |> line([1, 0], %) - |> line([0, -.75], %) + |> line(to = [-width + 1, -depth + serverDepth + 3.8]) + |> line(to = [1, 0]) + |> line(to = [0, -.75]) |> line([ width - 2, depth - serverDepth - 5 + .6 ], %) - |> lineTo([profileStartX(%), profileStartY(%)], %) - |> close(%) -const extrude007t = extrude(-1, sketch007t) + |> line(end = [profileStartX(%), profileStartY(%)]) + |> close() +const extrude007t = extrude(sketch007t, length = -1) const sketch008t = startSketchOn(plane004) |> startProfileAt([width - 1, 0 + 2.756], %) - |> line([-width + 2, 3], %) - |> line([0, 1], %) - |> line([width - 2, -3], %) - |> lineTo([profileStartX(%), profileStartY(%)], %) - |> close(%) -const extrude008t = extrude(-1, sketch008t) + |> line(to = [-width + 2, 3]) + |> line(to = [0, 1]) + |> line(to = [width - 2, -3]) + |> line(end = [profileStartX(%), profileStartY(%)]) + |> close() +const extrude008t = extrude(sketch008t, length = -1) const sketch009t = startSketchOn(plane004) |> startProfileAt([width - 1, depth - 2.8], %) - |> line([-width + 2, -depth + serverDepth + 4.4], %) - |> line([0, -1.32], %) - |> line([width - 2, depth - serverDepth - 4.4], %) - |> lineTo([profileStartX(%), profileStartY(%)], %) - |> close(%) + |> line(to = [-width + 2, -depth + serverDepth + 4.4]) + |> line(to = [0, -1.32]) + |> line(to = [width - 2, depth - serverDepth - 4.4]) + |> line(end = [profileStartX(%), profileStartY(%)]) + |> close() -const extrude009t = extrude(-1, sketch009t) +const extrude009t = extrude(sketch009t, length = -1) // front left vertical rail // Define planes so the rail can be moved @@ -647,7 +647,7 @@ const planeYZfl = { // Base flange const sketch001fl = startSketchOn(planeXZfl) |> startProfileAt([bendRad + thickness, 0], %) - |> angledLine([0, 2 - bendRad - thickness], %, $rectangleSegmentA001fl) + |> angledline(to = [0, 2 - bendRad - thickness], tag = $rectangleSegmentA001fl) |> angledLine([ segAng(rectangleSegmentA001fl) + 90, railHeight * 1.75 @@ -656,14 +656,14 @@ const sketch001fl = startSketchOn(planeXZfl) segAng(rectangleSegmentA001fl), -segLen(rectangleSegmentA001fl) ], %, $rectangleSegmentC001fl) - |> lineTo([profileStartX(%), profileStartY(%)], %) - |> close(%) -const extrude001fl = extrude(thickness, sketch001fl) + |> line(end = [profileStartX(%), profileStartY(%)]) + |> close() +const extrude001fl = extrude(sketch001fl, length = thickness) // First flange const sketch002fl = startSketchOn(planeYZfl) |> startProfileAt([-bendRad - thickness, 0], %) - |> angledLine([180, 0.89 - bendRad - thickness], %, $rectangleSegmentA002fl) + |> angledline(to = [180, 0.89 - bendRad - thickness], tag = $rectangleSegmentA002fl) |> angledLine([ segAng(rectangleSegmentA002fl) - 90, railHeight * 1.75 @@ -672,10 +672,10 @@ const sketch002fl = startSketchOn(planeYZfl) segAng(rectangleSegmentA002fl), -segLen(rectangleSegmentA002fl) ], %, $rectangleSegmentC002fl) - |> lineTo([profileStartX(%), profileStartY(%)], %) - |> close(%) + |> line(end = [profileStartX(%), profileStartY(%)]) + |> close() -const extrude002fl = extrude(thickness, sketch002fl) +const extrude002fl = extrude(sketch002fl, length = thickness) // Bend const sketch003fl = startSketchOn(planeXYfl) @@ -692,14 +692,14 @@ const sketch003fl = startSketchOn(planeXYfl) radius: bendRad }, %) |> yLine(-thickness, %) - |> close(%) + |> close() -const extrude003fl = extrude(railHeight * 1.75, sketch003fl) +const extrude003fl = extrude(sketch003fl, length = railHeight * 1.75) // EIA-310-D standard hole pattern const sketch004fl = startSketchOn(extrude002fl, 'START') |> startProfileAt([0.72 + originStart[1], originStart[2] + 0.15], %) - |> angledLine([0, -0.375], %, $rectangleSegmentA003fl) + |> angledline(to = [0, -0.375], tag = $rectangleSegmentA003fl) |> angledLine([ segAng(rectangleSegmentA003fl) - 90, 0.375 @@ -708,19 +708,19 @@ const sketch004fl = startSketchOn(extrude002fl, 'START') segAng(rectangleSegmentA003fl), -segLen(rectangleSegmentA003fl) ], %, $rectangleSegmentC003fl) - |> lineTo([profileStartX(%), profileStartY(%)], %) - |> close(%) + |> line(end = [profileStartX(%), profileStartY(%)]) + |> close() |> patternLinear2d({ axis: [0, 1], instances: railHeight, distance: 0.62 + 0.62 + 0.5 }, %) -const extrude004fl = extrude(-thickness, sketch004fl) +const extrude004fl = extrude(sketch004fl, length = -thickness) // EIA-310-D standard hole pattern const sketch005fl = startSketchOn(extrude002fl, 'START') |> startProfileAt([0.72 + originStart[1],originStart[2] + 0.15 + .62], %) - |> angledLine([0, -0.375], %, $rectangleSegmentA004fl) + |> angledline(to = [0, -0.375], tag = $rectangleSegmentA004fl) |> angledLine([ segAng(rectangleSegmentA004fl) - 90, 0.375 @@ -729,14 +729,14 @@ const sketch005fl = startSketchOn(extrude002fl, 'START') segAng(rectangleSegmentA004fl), -segLen(rectangleSegmentA004fl) ], %, $rectangleSegmentC004fl) - |> lineTo([profileStartX(%), profileStartY(%)], %) - |> close(%) + |> line(end = [profileStartX(%), profileStartY(%)]) + |> close() |> patternLinear2d({ axis: [0, 1], instances: railHeight, distance: 0.62 + 0.62 + 0.5 }, %) -const extrude005fl = extrude(-thickness, sketch005fl) +const extrude005fl = extrude(sketch005fl, length = -thickness) // EIA-310-D standard hole pattern const sketch006fl = startSketchOn(extrude002fl, 'START') @@ -744,7 +744,7 @@ const sketch006fl = startSketchOn(extrude002fl, 'START') 0.72 + originStart[1], originStart[2] + 0.15 + 0.62 + 0.50 ], %) - |> angledLine([0, -0.375], %, $rectangleSegmentA005fl) + |> angledline(to = [0, -0.375], tag = $rectangleSegmentA005fl) |> angledLine([ segAng(rectangleSegmentA005fl) - 90, 0.375 @@ -753,19 +753,19 @@ const sketch006fl = startSketchOn(extrude002fl, 'START') segAng(rectangleSegmentA005fl), -segLen(rectangleSegmentA005fl) ], %, $rectangleSegmentC005fl) - |> lineTo([profileStartX(%), profileStartY(%)], %) - |> close(%) + |> line(end = [profileStartX(%), profileStartY(%)]) + |> close() |> patternLinear2d({ axis: [0, 1], instances: railHeight, distance: 0.62 + 0.62 + 0.5 }, %) -const extrude006fl = extrude(-thickness, sketch006fl) +const extrude006fl = extrude(sketch006fl, length = -thickness) // EIA-310-D standard hole pattern const sketch007fl = startSketchOn(extrude001fl, 'START') |> startProfileAt([-1.45 - originStart[0], originStart[2] + 0.15], %) - |> angledLine([0, -0.375], %, $rectangleSegmentA006fl) + |> angledline(to = [0, -0.375], tag = $rectangleSegmentA006fl) |> angledLine([ segAng(rectangleSegmentA006fl) - 90, 0.375 @@ -774,19 +774,19 @@ const sketch007fl = startSketchOn(extrude001fl, 'START') segAng(rectangleSegmentA006fl), -segLen(rectangleSegmentA006fl) ], %, $rectangleSegmentC006fl) - |> lineTo([profileStartX(%), profileStartY(%)], %) - |> close(%) + |> line(end = [profileStartX(%), profileStartY(%)]) + |> close() |> patternLinear2d({ axis: [0, 1], instances: railHeight, distance: 0.62 + 0.62 + 0.5 }, %) -const extrude007fl = extrude(-thickness, sketch007fl) +const extrude007fl = extrude(sketch007fl, length = -thickness) // EIA-310-D standard hole pattern const sketch008fl = startSketchOn(extrude001fl, 'START') |> startProfileAt([-1.45 - originStart[0],originStart[2] + 0.15 + 0.62], %) - |> angledLine([0, -0.375], %, $rectangleSegmentA007fl) + |> angledline(to = [0, -0.375], tag = $rectangleSegmentA007fl) |> angledLine([ segAng(rectangleSegmentA007fl) - 90, 0.375 @@ -795,14 +795,14 @@ const sketch008fl = startSketchOn(extrude001fl, 'START') segAng(rectangleSegmentA007fl), -segLen(rectangleSegmentA007fl) ], %, $rectangleSegmentC007fl) - |> lineTo([profileStartX(%), profileStartY(%)], %) - |> close(%) + |> line(end = [profileStartX(%), profileStartY(%)]) + |> close() |> patternLinear2d({ axis: [0, 1], instances: railHeight, distance: 0.62 + 0.62 + 0.5 }, %) -const extrude008fl = extrude(-thickness, sketch008fl) +const extrude008fl = extrude(sketch008fl, length = -thickness) // EIA-310-D standard hole pattern const sketch009fl = startSketchOn(extrude001fl, 'START') @@ -810,7 +810,7 @@ const sketch009fl = startSketchOn(extrude001fl, 'START') -1.45 - originStart[0], originStart[2] + 0.15 + 0.62 + 0.5 ], %) - |> angledLine([0, -0.375], %, $rectangleSegmentA008fl) + |> angledline(to = [0, -0.375], tag = $rectangleSegmentA008fl) |> angledLine([ segAng(rectangleSegmentA008fl) - 90, 0.375 @@ -819,14 +819,14 @@ const sketch009fl = startSketchOn(extrude001fl, 'START') segAng(rectangleSegmentA008fl), -segLen(rectangleSegmentA008fl) ], %, $rectangleSegmentC008fl) - |> lineTo([profileStartX(%), profileStartY(%)], %) - |> close(%) + |> line(end = [profileStartX(%), profileStartY(%)]) + |> close() |> patternLinear2d({ axis: [0, 1], instances: railHeight, distance: 0.62 + 0.62 + 0.5 }, %) -const extrude009fl = extrude(-thickness, sketch009fl) +const extrude009fl = extrude(sketch009fl, length = -thickness) // define slots const sketch010fl = startSketchOn(extrude001fl, 'START') @@ -838,13 +838,13 @@ const sketch010fl = startSketchOn(extrude001fl, 'START') |> tangentialArcTo([-0.66 - originStart[0],originStart[2] + .81 + .438 / 2], %) |> xLine(-0.75 + .438, %) |> tangentialArcTo([profileStartX(%), profileStartY(%)], %) - |> close(%) + |> close() |> patternLinear2d({ axis: [0, 1], instances: 2, distance: 1.22 }, %) -const extrude010fl = extrude(-thickness, sketch010fl) +const extrude010fl = extrude(sketch010fl, length = -thickness) // define slots const sketch011fl = startSketchOn(extrude001fl, 'START') @@ -859,9 +859,9 @@ const sketch011fl = startSketchOn(extrude001fl, 'START') ], %) |> xLine(-0.75 + .438, %) |> tangentialArcTo([profileStartX(%), profileStartY(%)], %) - |> close(%) + |> close() -const extrude011fl = extrude(-thickness, sketch011fl) +const extrude011fl = extrude(sketch011fl, length = -thickness) // define slots const sketch012fl = startSketchOn(extrude001fl, 'START') @@ -876,13 +876,13 @@ const sketch012fl = startSketchOn(extrude001fl, 'START') ], %) |> xLine(-0.75 + .438, %) |> tangentialArcTo([profileStartX(%), profileStartY(%)], %) - |> close(%) + |> close() |> patternLinear2d({ axis: [0, -1], instances: 2, distance: 1.22 }, %) -const extrude012fl = extrude(-thickness, sketch012fl) +const extrude012fl = extrude(sketch012fl, length = -thickness) // FRONT RIGHT VERTICAL RAIL // Define planes so the rail can be moved @@ -924,7 +924,7 @@ const planeYZfr = { // Base flange const sketch001fr = startSketchOn(planeXZfr) |> startProfileAt([bendRad + thickness, 0], %) - |> angledLine([0, 2 - bendRad - thickness], %, $rectangleSegmentA001fr) + |> angledline(to = [0, 2 - bendRad - thickness], tag = $rectangleSegmentA001fr) |> angledLine([ segAng(rectangleSegmentA001fr) + 90, railHeight * 1.75 @@ -933,14 +933,14 @@ const sketch001fr = startSketchOn(planeXZfr) segAng(rectangleSegmentA001fr), -segLen(rectangleSegmentA001fr) ], %, $rectangleSegmentC001fr) - |> lineTo([profileStartX(%), profileStartY(%)], %) - |> close(%) -const extrude001fr = extrude(thickness, sketch001fr) + |> line(end = [profileStartX(%), profileStartY(%)]) + |> close() +const extrude001fr = extrude(sketch001fr, length = thickness) // First flange const sketch002fr = startSketchOn(planeYZfr) |> startProfileAt([0.89, 0], %) - |> angledLine([180, 0.89 - bendRad - thickness], %, $rectangleSegmentA002fr) + |> angledline(to = [180, 0.89 - bendRad - thickness], tag = $rectangleSegmentA002fr) |> angledLine([ segAng(rectangleSegmentA002fr) - 90, railHeight * 1.75 @@ -949,10 +949,10 @@ const sketch002fr = startSketchOn(planeYZfr) segAng(rectangleSegmentA002fr), -segLen(rectangleSegmentA002fr) ], %, $rectangleSegmentC002fr) - |> lineTo([profileStartX(%), profileStartY(%)], %) - |> close(%) + |> line(end = [profileStartX(%), profileStartY(%)]) + |> close() -const extrude002fr = extrude(thickness, sketch002fr) +const extrude002fr = extrude(sketch002fr, length = thickness) // Bend const sketch003fr = startSketchOn(planeXYfr) @@ -971,9 +971,9 @@ const sketch003fr = startSketchOn(planeXYfr) angleEnd: 0, radius: bendRad + thickness }, %) - |> close(%) + |> close() -const extrude003fr = extrude(railHeight * 1.75, sketch003fr) +const extrude003fr = extrude(sketch003fr, length = railHeight * 1.75) // EIA-310-D standard hole pattern const sketch004fr = startSketchOn(extrude002fr, 'START') @@ -981,7 +981,7 @@ const sketch004fr = startSketchOn(extrude002fr, 'START') -0.35 + originStart[1] + width - 2, originStart[2] + 0.15 ], %) - |> angledLine([0, -0.375], %, $rectangleSegmentA003fr) + |> angledline(to = [0, -0.375], tag = $rectangleSegmentA003fr) |> angledLine([ segAng(rectangleSegmentA003fr) - 90, 0.375 @@ -990,14 +990,14 @@ const sketch004fr = startSketchOn(extrude002fr, 'START') segAng(rectangleSegmentA003fr), -segLen(rectangleSegmentA003fr) ], %, $rectangleSegmentC003fr) - |> lineTo([profileStartX(%), profileStartY(%)], %) - |> close(%) + |> line(end = [profileStartX(%), profileStartY(%)]) + |> close() |> patternLinear2d({ axis: [0, 1], instances: railHeight, distance: 0.62 + 0.62 + 0.5 }, %) -const extrude004fr = extrude(-thickness, sketch004fr) +const extrude004fr = extrude(sketch004fr, length = -thickness) // EIA-310-D standard hole pattern const sketch005fr = startSketchOn(extrude002fr, 'START') @@ -1005,7 +1005,7 @@ const sketch005fr = startSketchOn(extrude002fr, 'START') -0.35 + originStart[1] + width - 2, originStart[2] + 0.15 + .62 ], %) - |> angledLine([0, -0.375], %, $rectangleSegmentA004fr) + |> angledline(to = [0, -0.375], tag = $rectangleSegmentA004fr) |> angledLine([ segAng(rectangleSegmentA004fr) - 90, 0.375 @@ -1014,14 +1014,14 @@ const sketch005fr = startSketchOn(extrude002fr, 'START') segAng(rectangleSegmentA004fr), -segLen(rectangleSegmentA004fr) ], %, $rectangleSegmentC004fr) - |> lineTo([profileStartX(%), profileStartY(%)], %) - |> close(%) + |> line(end = [profileStartX(%), profileStartY(%)]) + |> close() |> patternLinear2d({ axis: [0, 1], instances: railHeight, distance: 0.62 + 0.62 + 0.5 }, %) -const extrude005fr = extrude(-thickness, sketch005fr) +const extrude005fr = extrude(sketch005fr, length = -thickness) // EIA-310-D standard hole pattern const sketch006fr = startSketchOn(extrude002fr, 'START') @@ -1029,7 +1029,7 @@ const sketch006fr = startSketchOn(extrude002fr, 'START') -0.35 + originStart[1] + width - 2, originStart[2] + 0.15 + 0.62 + 0.50 ], %) - |> angledLine([0, -0.375], %, $rectangleSegmentA005fr) + |> angledline(to = [0, -0.375], tag = $rectangleSegmentA005fr) |> angledLine([ segAng(rectangleSegmentA005fr) - 90, 0.375 @@ -1038,14 +1038,14 @@ const sketch006fr = startSketchOn(extrude002fr, 'START') segAng(rectangleSegmentA005fr), -segLen(rectangleSegmentA005fr) ], %, $rectangleSegmentC005fr) - |> lineTo([profileStartX(%), profileStartY(%)], %) - |> close(%) + |> line(end = [profileStartX(%), profileStartY(%)]) + |> close() |> patternLinear2d({ axis: [0, 1], instances: railHeight, distance: 0.62 + 0.62 + 0.5 }, %) -const extrude006fr = extrude(-thickness, sketch006fr) +const extrude006fr = extrude(sketch006fr, length = -thickness) // EIA-310-D standard hole pattern const sketch007fr = startSketchOn(extrude001fr, 'START') @@ -1053,7 +1053,7 @@ const sketch007fr = startSketchOn(extrude001fr, 'START') -1.45 - originStart[0], originStart[2] + 0.15 ], %) - |> angledLine([0, -0.375], %, $rectangleSegmentA006fr) + |> angledline(to = [0, -0.375], tag = $rectangleSegmentA006fr) |> angledLine([ segAng(rectangleSegmentA006fr) - 90, 0.375 @@ -1062,14 +1062,14 @@ const sketch007fr = startSketchOn(extrude001fr, 'START') segAng(rectangleSegmentA006fr), -segLen(rectangleSegmentA006fr) ], %, $rectangleSegmentC006fr) - |> lineTo([profileStartX(%), profileStartY(%)], %) - |> close(%) + |> line(end = [profileStartX(%), profileStartY(%)]) + |> close() |> patternLinear2d({ axis: [0, 1], instances: railHeight, distance: 0.62 + 0.62 + 0.5 }, %) -const extrude007fr = extrude(-thickness, sketch007fr) +const extrude007fr = extrude(sketch007fr, length = -thickness) // EIA-310-D standard hole pattern const sketch008fr = startSketchOn(extrude001fr, 'START') @@ -1077,7 +1077,7 @@ const sketch008fr = startSketchOn(extrude001fr, 'START') -1.45 - originStart[0], originStart[2] + 0.15 + 0.62 ], %) - |> angledLine([0, -0.375], %, $rectangleSegmentA007fr) + |> angledline(to = [0, -0.375], tag = $rectangleSegmentA007fr) |> angledLine([ segAng(rectangleSegmentA007fr) - 90, 0.375 @@ -1086,14 +1086,14 @@ const sketch008fr = startSketchOn(extrude001fr, 'START') segAng(rectangleSegmentA007fr), -segLen(rectangleSegmentA007fr) ], %, $rectangleSegmentC007fr) - |> lineTo([profileStartX(%), profileStartY(%)], %) - |> close(%) + |> line(end = [profileStartX(%), profileStartY(%)]) + |> close() |> patternLinear2d({ axis: [0, 1], instances: railHeight, distance: 0.62 + 0.62 + 0.5 }, %) -const extrude008fr = extrude(-thickness, sketch008fr) +const extrude008fr = extrude(sketch008fr, length = -thickness) // EIA-310-D standard hole pattern const sketch009fr = startSketchOn(extrude001fr, 'START') @@ -1101,7 +1101,7 @@ const sketch009fr = startSketchOn(extrude001fr, 'START') -1.45 - originStart[0], originStart[2] + 0.15 + 0.62 + 0.5 ], %) - |> angledLine([0, -0.375], %, $rectangleSegmentA008fr) + |> angledline(to = [0, -0.375], tag = $rectangleSegmentA008fr) |> angledLine([ segAng(rectangleSegmentA008fr) - 90, 0.375 @@ -1110,14 +1110,14 @@ const sketch009fr = startSketchOn(extrude001fr, 'START') segAng(rectangleSegmentA008fr), -segLen(rectangleSegmentA008fr) ], %, $rectangleSegmentC008fr) - |> lineTo([profileStartX(%), profileStartY(%)], %) - |> close(%) + |> line(end = [profileStartX(%), profileStartY(%)]) + |> close() |> patternLinear2d({ axis: [0, 1], instances: railHeight, distance: 0.62 + 0.62 + 0.5 }, %) -const extrude009fr = extrude(-thickness, sketch009fr) +const extrude009fr = extrude(sketch009fr, length = -thickness) // define slots const sketch010fr = startSketchOn(extrude001fr, 'START') @@ -1132,13 +1132,13 @@ const sketch010fr = startSketchOn(extrude001fr, 'START') ], %) |> xLine(-0.75 + .438, %) |> tangentialArcTo([profileStartX(%), profileStartY(%)], %) - |> close(%) + |> close() |> patternLinear2d({ axis: [0, 1], instances: 2, distance: 1.22 }, %) -const extrude010fr = extrude(-thickness, sketch010fr) +const extrude010fr = extrude(sketch010fr, length = -thickness) // define slots const sketch011fr = startSketchOn(extrude001fr, 'START') @@ -1153,9 +1153,9 @@ const sketch011fr = startSketchOn(extrude001fr, 'START') ], %) |> xLine(-0.75 + .438, %) |> tangentialArcTo([profileStartX(%), profileStartY(%)], %) - |> close(%) + |> close() -const extrude011fr = extrude(-thickness, sketch011fr) +const extrude011fr = extrude(sketch011fr, length = -thickness) // define slots const sketch012fr = startSketchOn(extrude001fr, 'START') @@ -1170,13 +1170,13 @@ const sketch012fr = startSketchOn(extrude001fr, 'START') ], %) |> xLine(-0.75 + .438, %) |> tangentialArcTo([profileStartX(%), profileStartY(%)], %) - |> close(%) + |> close() |> patternLinear2d({ axis: [0, -1], instances: 2, distance: 1.22 }, %) -const extrude012fr = extrude(-thickness, sketch012fr) +const extrude012fr = extrude(sketch012fr, length = -thickness) // RIGHT REAR VERTICAL RAIL // Define planes so the rail can be moved @@ -1218,7 +1218,7 @@ const planeYZrr = { // Base flange const sketch001rr = startSketchOn(planeXZrr) |> startProfileAt([bendRad + thickness, 0], %) - |> angledLine([0, 2 - bendRad - thickness], %, $rectangleSegmentA001rr) + |> angledline(to = [0, 2 - bendRad - thickness], tag = $rectangleSegmentA001rr) |> angledLine([ segAng(rectangleSegmentA001rr) + 90, railHeight * 1.75 @@ -1227,14 +1227,14 @@ const sketch001rr = startSketchOn(planeXZrr) segAng(rectangleSegmentA001rr), -segLen(rectangleSegmentA001rr) ], %, $rectangleSegmentC001rr) - |> lineTo([profileStartX(%), profileStartY(%)], %) - |> close(%) -const extrude001rr = extrude(thickness, sketch001rr) + |> line(end = [profileStartX(%), profileStartY(%)]) + |> close() +const extrude001rr = extrude(sketch001rr, length = thickness) // First flange const sketch002rr = startSketchOn(planeYZrr) |> startProfileAt([0.89, 0], %) - |> angledLine([180, 0.89 - bendRad - thickness], %, $rectangleSegmentA002rr) + |> angledline(to = [180, 0.89 - bendRad - thickness], tag = $rectangleSegmentA002rr) |> angledLine([ segAng(rectangleSegmentA002rr) - 90, railHeight * 1.75 @@ -1243,10 +1243,10 @@ const sketch002rr = startSketchOn(planeYZrr) segAng(rectangleSegmentA002rr), -segLen(rectangleSegmentA002rr) ], %, $rectangleSegmentC002rr) - |> lineTo([profileStartX(%), profileStartY(%)], %) - |> close(%) + |> line(end = [profileStartX(%), profileStartY(%)]) + |> close() -const extrude002rr = extrude(thickness, sketch002rr) +const extrude002rr = extrude(sketch002rr, length = thickness) // Bend const sketch003rr = startSketchOn(planeXYrr) @@ -1265,9 +1265,9 @@ const sketch003rr = startSketchOn(planeXYrr) angleEnd: 0, radius: bendRad }, %) - |> close(%) + |> close() -const extrude003rr = extrude(railHeight * 1.75, sketch003rr) +const extrude003rr = extrude(sketch003rr, length = railHeight * 1.75) // EIA-310-D standard hole pattern const sketch004rr = startSketchOn(extrude002rr, 'START') @@ -1275,7 +1275,7 @@ const sketch004rr = startSketchOn(extrude002rr, 'START') -0.35 + originStart[1] + width - 2, originStart[2] + 0.15 ], %) - |> angledLine([0, -0.375], %, $rectangleSegmentA003rr) + |> angledline(to = [0, -0.375], tag = $rectangleSegmentA003rr) |> angledLine([ segAng(rectangleSegmentA003rr) - 90, 0.375 @@ -1284,14 +1284,14 @@ const sketch004rr = startSketchOn(extrude002rr, 'START') segAng(rectangleSegmentA003rr), -segLen(rectangleSegmentA003rr) ], %, $rectangleSegmentC003rr) - |> lineTo([profileStartX(%), profileStartY(%)], %) - |> close(%) + |> line(end = [profileStartX(%), profileStartY(%)]) + |> close() |> patternLinear2d({ axis: [0, 1], instances: railHeight, distance: 0.62 + 0.62 + 0.5 }, %) -const extrude004rr = extrude(-thickness, sketch004rr) +const extrude004rr = extrude(sketch004rr, length = -thickness) // EIA-310-D standard hole pattern const sketch005rr = startSketchOn(extrude002rr, 'START') @@ -1299,7 +1299,7 @@ const sketch005rr = startSketchOn(extrude002rr, 'START') -0.35 + originStart[1] + width - 2, originStart[2] + 0.15 + .62 ], %) - |> angledLine([0, -0.375], %, $rectangleSegmentA004rr) + |> angledline(to = [0, -0.375], tag = $rectangleSegmentA004rr) |> angledLine([ segAng(rectangleSegmentA004rr) - 90, 0.375 @@ -1308,14 +1308,14 @@ const sketch005rr = startSketchOn(extrude002rr, 'START') segAng(rectangleSegmentA004rr), -segLen(rectangleSegmentA004rr) ], %, $rectangleSegmentC004rr) - |> lineTo([profileStartX(%), profileStartY(%)], %) - |> close(%) + |> line(end = [profileStartX(%), profileStartY(%)]) + |> close() |> patternLinear2d({ axis: [0, 1], instances: railHeight, distance: 0.62 + 0.62 + 0.5 }, %) -const extrude005rr = extrude(-thickness, sketch005rr) +const extrude005rr = extrude(sketch005rr, length = -thickness) // EIA-310-D standard hole pattern const sketch006rr = startSketchOn(extrude002rr, 'START') @@ -1323,7 +1323,7 @@ const sketch006rr = startSketchOn(extrude002rr, 'START') -0.35 + originStart[1] + width - 2, originStart[2] + 0.15 + 0.62 + 0.50 ], %) - |> angledLine([0, -0.375], %, $rectangleSegmentA005rr) + |> angledline(to = [0, -0.375], tag = $rectangleSegmentA005rr) |> angledLine([ segAng(rectangleSegmentA005rr) - 90, 0.375 @@ -1332,14 +1332,14 @@ const sketch006rr = startSketchOn(extrude002rr, 'START') segAng(rectangleSegmentA005rr), -segLen(rectangleSegmentA005rr) ], %, $rectangleSegmentC005rr) - |> lineTo([profileStartX(%), profileStartY(%)], %) - |> close(%) + |> line(end = [profileStartX(%), profileStartY(%)]) + |> close() |> patternLinear2d({ axis: [0, 1], instances: railHeight, distance: 0.62 + 0.62 + 0.5 }, %) -const extrude006rr = extrude(-thickness, sketch006rr) +const extrude006rr = extrude(sketch006rr, length = -thickness) // EIA-310-D standard hole pattern const sketch007rr = startSketchOn(extrude001rr, 'START') @@ -1347,7 +1347,7 @@ const sketch007rr = startSketchOn(extrude001rr, 'START') -originStart[0]-serverDepth+1.7, originStart[2] + 0.15 ], %) - |> angledLine([0, -0.375], %, $rectangleSegmentA006rr) + |> angledline(to = [0, -0.375], tag = $rectangleSegmentA006rr) |> angledLine([ segAng(rectangleSegmentA006rr) - 90, 0.375 @@ -1356,14 +1356,14 @@ const sketch007rr = startSketchOn(extrude001rr, 'START') segAng(rectangleSegmentA006rr), -segLen(rectangleSegmentA006rr) ], %, $rectangleSegmentC006rr) - |> lineTo([profileStartX(%), profileStartY(%)], %) - |> close(%) + |> line(end = [profileStartX(%), profileStartY(%)]) + |> close() |> patternLinear2d({ axis: [0, 1], instances: railHeight, distance: 0.62 + 0.62 + 0.5 }, %) -const extrude007rr = extrude(-thickness, sketch007rr) +const extrude007rr = extrude(sketch007rr, length = -thickness) // EIA-310-D standard hole pattern const sketch008rr = startSketchOn(extrude001rr, 'START') @@ -1371,7 +1371,7 @@ const sketch008rr = startSketchOn(extrude001rr, 'START') -originStart[0]-serverDepth+1.7, originStart[2] + 0.15 + 0.62 ], %) - |> angledLine([0, -0.375], %, $rectangleSegmentA007rr) + |> angledline(to = [0, -0.375], tag = $rectangleSegmentA007rr) |> angledLine([ segAng(rectangleSegmentA007rr) - 90, 0.375 @@ -1380,14 +1380,14 @@ const sketch008rr = startSketchOn(extrude001rr, 'START') segAng(rectangleSegmentA007rr), -segLen(rectangleSegmentA007rr) ], %, $rectangleSegmentC007rr) - |> lineTo([profileStartX(%), profileStartY(%)], %) - |> close(%) + |> line(end = [profileStartX(%), profileStartY(%)]) + |> close() |> patternLinear2d({ axis: [0, 1], instances: railHeight, distance: 0.62 + 0.62 + 0.5 }, %) -const extrude008rr = extrude(-thickness, sketch008rr) +const extrude008rr = extrude(sketch008rr, length = -thickness) // EIA-310-D standard hole pattern const sketch009rr = startSketchOn(extrude001rr, 'START') @@ -1395,7 +1395,7 @@ const sketch009rr = startSketchOn(extrude001rr, 'START') -originStart[0]-serverDepth+1.7, originStart[2] + 0.15 + 0.62 + 0.5 ], %) - |> angledLine([0, -0.375], %, $rectangleSegmentA008rr) + |> angledline(to = [0, -0.375], tag = $rectangleSegmentA008rr) |> angledLine([ segAng(rectangleSegmentA008rr) - 90, 0.375 @@ -1404,14 +1404,14 @@ const sketch009rr = startSketchOn(extrude001rr, 'START') segAng(rectangleSegmentA008rr), -segLen(rectangleSegmentA008rr) ], %, $rectangleSegmentC008rr) - |> lineTo([profileStartX(%), profileStartY(%)], %) - |> close(%) + |> line(end = [profileStartX(%), profileStartY(%)]) + |> close() |> patternLinear2d({ axis: [0, 1], instances: railHeight, distance: 0.62 + 0.62 + 0.5 }, %) -const extrude009rr = extrude(-thickness, sketch009rr) +const extrude009rr = extrude(sketch009rr, length = -thickness) // define slots const sketch010rr = startSketchOn(extrude001rr, 'START') @@ -1426,13 +1426,13 @@ const sketch010rr = startSketchOn(extrude001rr, 'START') ], %) |> xLine(-0.75 + .438, %) |> tangentialArcTo([profileStartX(%), profileStartY(%)], %) - |> close(%) + |> close() |> patternLinear2d({ axis: [0, 1], instances: 2, distance: 1.22 }, %) -const extrude010rr = extrude(-thickness, sketch010rr) +const extrude010rr = extrude(sketch010rr, length = -thickness) // define slots const sketch011rr = startSketchOn(extrude001rr, 'START') @@ -1447,9 +1447,9 @@ const sketch011rr = startSketchOn(extrude001rr, 'START') ], %) |> xLine(-0.75 + .438, %) |> tangentialArcTo([profileStartX(%), profileStartY(%)], %) - |> close(%) + |> close() -const extrude011rr = extrude(-thickness, sketch011rr) +const extrude011rr = extrude(sketch011rr, length = -thickness) // define slots const sketch012rr = startSketchOn(extrude001rr, 'START') @@ -1464,13 +1464,13 @@ const sketch012rr = startSketchOn(extrude001rr, 'START') ], %) |> xLine(-0.75 + .438, %) |> tangentialArcTo([profileStartX(%), profileStartY(%)], %) - |> close(%) + |> close() |> patternLinear2d({ axis: [0, -1], instances: 2, distance: 1.22 }, %) -const extrude012rr = extrude(-thickness, sketch012rr) +const extrude012rr = extrude(sketch012rr, length = -thickness) // REAR LEFT VETCIAL RAIL // Define planes so the rail can be moved @@ -1511,7 +1511,7 @@ const planeYZrl = { // Base flange const sketch001rl = startSketchOn(planeXZrl) |> startProfileAt([bendRad + thickness, 0], %) - |> angledLine([0, 2 - bendRad - thickness], %, $rectangleSegmentA001rl) + |> angledline(to = [0, 2 - bendRad - thickness], tag = $rectangleSegmentA001rl) |> angledLine([ segAng(rectangleSegmentA001rl) + 90, railHeight * 1.75 @@ -1520,14 +1520,14 @@ const sketch001rl = startSketchOn(planeXZrl) segAng(rectangleSegmentA001rl), -segLen(rectangleSegmentA001rl) ], %, $rectangleSegmentC001rl) - |> lineTo([profileStartX(%), profileStartY(%)], %) - |> close(%) -const extrude001rl = extrude(thickness, sketch001rl) + |> line(end = [profileStartX(%), profileStartY(%)]) + |> close() +const extrude001rl = extrude(sketch001rl, length = thickness) // First flange const sketch002rl = startSketchOn(planeYZrl) |> startProfileAt([-bendRad - thickness, 0], %) - |> angledLine([180, 0.89 - bendRad - thickness], %, $rectangleSegmentA002rl) + |> angledline(to = [180, 0.89 - bendRad - thickness], tag = $rectangleSegmentA002rl) |> angledLine([ segAng(rectangleSegmentA002rl) - 90, railHeight * 1.75 @@ -1536,10 +1536,10 @@ const sketch002rl = startSketchOn(planeYZrl) segAng(rectangleSegmentA002rl), -segLen(rectangleSegmentA002rl) ], %, $rectangleSegmentC002rl) - |> lineTo([profileStartX(%), profileStartY(%)], %) - |> close(%) + |> line(end = [profileStartX(%), profileStartY(%)]) + |> close() -const extrude002rl = extrude(thickness, sketch002rl) +const extrude002rl = extrude(sketch002rl, length = thickness) // Bend const sketch003rl = startSketchOn(planeXYrl) @@ -1558,9 +1558,9 @@ const sketch003rl = startSketchOn(planeXYrl) angleEnd: 90, radius: bendRad + thickness }, %) - |> close(%) + |> close() -const extrude003rl = extrude(railHeight * 1.75, sketch003rl) +const extrude003rl = extrude(sketch003rl, length = railHeight * 1.75) // EIA-310-D standard hole pattern const sketch004rl = startSketchOn(extrude002rl, 'START') @@ -1568,7 +1568,7 @@ const sketch004rl = startSketchOn(extrude002rl, 'START') -1.38 + 2 + thickness + originStart[1], originStart[2] + 0.15 ], %) - |> angledLine([0, -0.375], %, $rectangleSegmentA003rl) + |> angledline(to = [0, -0.375], tag = $rectangleSegmentA003rl) |> angledLine([ segAng(rectangleSegmentA003rl) - 90, 0.375 @@ -1577,14 +1577,14 @@ const sketch004rl = startSketchOn(extrude002rl, 'START') segAng(rectangleSegmentA003rl), -segLen(rectangleSegmentA003rl) ], %, $rectangleSegmentC003rl) - |> lineTo([profileStartX(%), profileStartY(%)], %) - |> close(%) + |> line(end = [profileStartX(%), profileStartY(%)]) + |> close() |> patternLinear2d({ axis: [0, 1], instances: railHeight, distance: 0.62 + 0.62 + 0.5 }, %) -const extrude004rl = extrude(-thickness, sketch004rl) +const extrude004rl = extrude(sketch004rl, length = -thickness) // EIA-310-D standard hole pattern const sketch005rl = startSketchOn(extrude002rl, 'START') @@ -1592,7 +1592,7 @@ const sketch005rl = startSketchOn(extrude002rl, 'START') -1.38 + 2 + thickness + originStart[1], originStart[2] + 0.15 + .62 ], %) - |> angledLine([0, -0.375], %, $rectangleSegmentA004rl) + |> angledline(to = [0, -0.375], tag = $rectangleSegmentA004rl) |> angledLine([ segAng(rectangleSegmentA004rl) - 90, 0.375 @@ -1601,14 +1601,14 @@ const sketch005rl = startSketchOn(extrude002rl, 'START') segAng(rectangleSegmentA004rl), -segLen(rectangleSegmentA004rl) ], %, $rectangleSegmentC004rl) - |> lineTo([profileStartX(%), profileStartY(%)], %) - |> close(%) + |> line(end = [profileStartX(%), profileStartY(%)]) + |> close() |> patternLinear2d({ axis: [0, 1], instances: railHeight, distance: 0.62 + 0.62 + 0.5 }, %) -const extrude005rl = extrude(-thickness, sketch005rl) +const extrude005rl = extrude(sketch005rl, length = -thickness) // EIA-310-D standard hole pattern const sketch006rl = startSketchOn(extrude002rl, 'START') @@ -1616,7 +1616,7 @@ const sketch006rl = startSketchOn(extrude002rl, 'START') -1.38 + 2 + thickness + originStart[1], originStart[2] + 0.15 + 0.62 + 0.50 ], %) - |> angledLine([0, -0.375], %, $rectangleSegmentA005rl) + |> angledline(to = [0, -0.375], tag = $rectangleSegmentA005rl) |> angledLine([ segAng(rectangleSegmentA005rl) - 90, 0.375 @@ -1625,14 +1625,14 @@ const sketch006rl = startSketchOn(extrude002rl, 'START') segAng(rectangleSegmentA005rl), -segLen(rectangleSegmentA005rl) ], %, $rectangleSegmentC005rl) - |> lineTo([profileStartX(%), profileStartY(%)], %) - |> close(%) + |> line(end = [profileStartX(%), profileStartY(%)]) + |> close() |> patternLinear2d({ axis: [0, 1], instances: railHeight, distance: 0.62 + 0.62 + 0.5 }, %) -const extrude006rl = extrude(-thickness, sketch006rl) +const extrude006rl = extrude(sketch006rl, length = -thickness) // EIA-310-D standard hole pattern const sketch007rl = startSketchOn(extrude001rl, 'START') @@ -1640,7 +1640,7 @@ const sketch007rl = startSketchOn(extrude001rl, 'START') 1.75 - originStart[0] - serverDepth, originStart[2] + 0.15 ], %) - |> angledLine([0, -0.375], %, $rectangleSegmentA006rl) + |> angledline(to = [0, -0.375], tag = $rectangleSegmentA006rl) |> angledLine([ segAng(rectangleSegmentA006rl) - 90, 0.375 @@ -1649,14 +1649,14 @@ const sketch007rl = startSketchOn(extrude001rl, 'START') segAng(rectangleSegmentA006rl), -segLen(rectangleSegmentA006rl) ], %, $rectangleSegmentC006rl) - |> lineTo([profileStartX(%), profileStartY(%)], %) - |> close(%) + |> line(end = [profileStartX(%), profileStartY(%)]) + |> close() |> patternLinear2d({ axis: [0, 1], instances: railHeight, distance: 0.62 + 0.62 + 0.5 }, %) -const extrude007rl = extrude(-thickness, sketch007rl) +const extrude007rl = extrude(sketch007rl, length = -thickness) // EIA-310-D standard hole pattern const sketch008rl = startSketchOn(extrude001rl, 'START') @@ -1664,7 +1664,7 @@ const sketch008rl = startSketchOn(extrude001rl, 'START') 1.75 - originStart[0] - serverDepth, originStart[2] + 0.15 + 0.62 ], %) - |> angledLine([0, -0.375], %, $rectangleSegmentA007rl) + |> angledline(to = [0, -0.375], tag = $rectangleSegmentA007rl) |> angledLine([ segAng(rectangleSegmentA007rl) - 90, 0.375 @@ -1673,14 +1673,14 @@ const sketch008rl = startSketchOn(extrude001rl, 'START') segAng(rectangleSegmentA007rl), -segLen(rectangleSegmentA007rl) ], %, $rectangleSegmentC007rl) - |> lineTo([profileStartX(%), profileStartY(%)], %) - |> close(%) + |> line(end = [profileStartX(%), profileStartY(%)]) + |> close() |> patternLinear2d({ axis: [0, 1], instances: railHeight, distance: 0.62 + 0.62 + 0.5 }, %) -const extrude008rl = extrude(-thickness, sketch008rl) +const extrude008rl = extrude(sketch008rl, length = -thickness) // EIA-310-D standard hole pattern const sketch009rl = startSketchOn(extrude001rl, 'START') @@ -1688,7 +1688,7 @@ const sketch009rl = startSketchOn(extrude001rl, 'START') 1.75 - originStart[0] - serverDepth, originStart[2] + 0.15 + 0.62 + 0.5 ], %) - |> angledLine([0, -0.375], %, $rectangleSegmentA008rl) + |> angledline(to = [0, -0.375], tag = $rectangleSegmentA008rl) |> angledLine([ segAng(rectangleSegmentA008rl) - 90, 0.375 @@ -1697,14 +1697,14 @@ const sketch009rl = startSketchOn(extrude001rl, 'START') segAng(rectangleSegmentA008rl), -segLen(rectangleSegmentA008rl) ], %, $rectangleSegmentC008rl) - |> lineTo([profileStartX(%), profileStartY(%)], %) - |> close(%) + |> line(end = [profileStartX(%), profileStartY(%)]) + |> close() |> patternLinear2d({ axis: [0, 1], instances: railHeight, distance: 0.62 + 0.62 + 0.5 }, %) -const extrude009rl = extrude(-thickness, sketch009rl) +const extrude009rl = extrude(sketch009rl, length = -thickness) // define slots const sketch010rl = startSketchOn(extrude001rl, 'START') @@ -1719,13 +1719,13 @@ const sketch010rl = startSketchOn(extrude001rl, 'START') ], %) |> xLine(-0.75 + .438, %) |> tangentialArcTo([profileStartX(%), profileStartY(%)], %) - |> close(%) + |> close() |> patternLinear2d({ axis: [0, 1], instances: 2, distance: 1.22 }, %) -const extrude010rl = extrude(-thickness, sketch010rl) +const extrude010rl = extrude(sketch010rl, length = -thickness) // define slots const sketch011rl = startSketchOn(extrude001rl, 'START') @@ -1740,9 +1740,9 @@ const sketch011rl = startSketchOn(extrude001rl, 'START') ], %) |> xLine(-0.75 + .438, %) |> tangentialArcTo([profileStartX(%), profileStartY(%)], %) - |> close(%) + |> close() -const extrude011rl = extrude(-thickness, sketch011rl) +const extrude011rl = extrude(sketch011rl, length = -thickness) // define slots const sketch012rl = startSketchOn(extrude001rl, 'START') @@ -1757,13 +1757,13 @@ const sketch012rl = startSketchOn(extrude001rl, 'START') ], %) |> xLine(-0.75 + .438, %) |> tangentialArcTo([profileStartX(%), profileStartY(%)], %) - |> close(%) + |> close() |> patternLinear2d({ axis: [0, -1], instances: 2, distance: 1.22 }, %) -const extrude012rl = extrude(-thickness, sketch012rl) +const extrude012rl = extrude(sketch012rl, length = -thickness) // GENERATE SERVER MODELS // Define planes so the server can be moved @@ -1796,15 +1796,15 @@ fn streamServer = (serverPos) => { const sketch001s = startSketchOn(planeXYs) |> startProfileAt([1 + 1.2, 1], %) - |> angledLine([0, 17.2], %, $rectangleSegmentA001) - |> angledLine([segAng(rectangleSegmentA001) + 90, 29], %, $rectangleSegmentB001) + |> angledline(to = [0, 17.2], tag = $rectangleSegmentA001) + |> angledline(to = [segAng(rectangleSegmentA001) + 90, 29], tag = $rectangleSegmentB001) |> angledLine([ segAng(rectangleSegmentA001), -segLen(rectangleSegmentA001) ], %, $rectangleSegmentC001) - |> lineTo([profileStartX(%), profileStartY(%)], %, $seg01) - |> close(%) - const extrude001s = extrude(7, sketch001s) + |> line(end = [profileStartX(%), profileStartY(%)]) + |> close() + const extrude001s = extrude(sketch001s, length = 7) const sketch002s = startSketchOn(planeXZs) |> startProfileAt([-1, 4.114 + 1 + serverPos * 1.75], %) @@ -1823,12 +1823,12 @@ fn streamServer = (serverPos) => { ], %) |> xLine(-0.52, %) |> yLine(-0.42, %) - |> line([0.34, -0.15], %) + |> line(to = [0.34, -0.15]) |> yLine(-2.97, %) - |> lineTo([profileStartX(%), profileStartY(%)], %) - |> close(%) + |> line(end = [profileStartX(%), profileStartY(%)]) + |> close() - const extrude002s = extrude(1.8 / 2, sketch002s) + const extrude002s = extrude(sketch002s, length = 1.8 / 2) const sketch003s = startSketchOn(planeXZs2) |> startProfileAt([-1, 4.114 + 1 + serverPos * 1.75], %) @@ -1847,12 +1847,12 @@ fn streamServer = (serverPos) => { ], %) |> xLine(-0.52, %) |> yLine(-0.42, %) - |> line([0.34, -0.15], %) + |> line(to = [0.34, -0.15]) |> yLine(-2.97, %) - |> lineTo([profileStartX(%), profileStartY(%)], %) - |> close(%) + |> line(end = [profileStartX(%), profileStartY(%)]) + |> close() - const extrude003s = extrude(1.8 / 2, sketch003s) + const extrude003s = extrude(sketch003s, length = 1.8 / 2) return extrude003s } diff --git a/src/wasm-lib/tests/executor/inputs/server-rack-lite.kcl b/src/wasm-lib/tests/executor/inputs/server-rack-lite.kcl index 284aec8b61..f46411f69f 100644 --- a/src/wasm-lib/tests/executor/inputs/server-rack-lite.kcl +++ b/src/wasm-lib/tests/executor/inputs/server-rack-lite.kcl @@ -26,8 +26,8 @@ fn caster = (originStart) => { |> xLine(3.543, %) |> yLine(3.543, %) |> xLine(-3.543, %) - |> lineTo([profileStartX(%), profileStartY(%)], %) - |> close(%) + |> line(end = [profileStartX(%), profileStartY(%)]) + |> close() |> hole(circle({ center: [ (3.543 - 2.756) / 2, (3.543 - 2.756) / 2 @@ -44,7 +44,7 @@ fn caster = (originStart) => { (3.543 - 2.756) / 2 + 2.756, (3.543 - 2.756) / 2 + 2.756 ], radius: 8.8 / 2 / 25.4 }, %), %) - |> extrude(-.25, %) + |> extrude(length = -.25) const sketch002c = startSketchOn(sketch001c, 'START') |> startProfileAt([-originStart[0], 2.2 + originStart[1]], %) @@ -53,8 +53,8 @@ fn caster = (originStart) => { angle_end: 330, radius: 3.2 / 2 }, %) - |> close(%) - |> extrude(3.1, %) + |> close() + |> extrude(length = 3.1) const plane002c = { plane: { @@ -70,7 +70,7 @@ fn caster = (originStart) => { } const sketch003c = startSketchOn(plane002c) |> circle({ center: [0, 1.2], radisu: 2.48 / 2 }, %) - const examplec = extrude(-1 - (3 / 16), sketch003c) + const examplec = extrude(sketch003c, length = -1 - (3 / 16)) return examplec } @@ -110,10 +110,10 @@ const sketch001l = startSketchOn(plane001) |> startProfileAt([0, 0], %) |> xLine(serverDepth + .8, %) |> angledLineToY({ angle: -45, to: 1 }, %) - |> xLine(-serverDepth + 2 - .8, %, $seg01) - |> lineTo([profileStartX(%), profileStartY(%)], %) - |> close(%) -const extrude001l = extrude(1, sketch001l) + |> xline(to = -serverDepth + 2 - .8, tag = $seg01) + |> line(end = [profileStartX(%), profileStartY(%)]) + |> close() +const extrude001l = extrude(sketch001l, length = 1) const sketch002l = startSketchOn(plane001) |> startProfileAt([serverDepth + .8, 0], %) @@ -123,24 +123,24 @@ const sketch002l = startSketchOn(plane001) to: serverDepth - 1 + .8 }, %) |> yLine(-railHeight * 1.75, %) - |> lineTo([profileStartX(%), profileStartY(%)], %) - |> close(%) -const extrude002l = extrude(1, sketch002l) + |> line(end = [profileStartX(%), profileStartY(%)]) + |> close() +const extrude002l = extrude(sketch002l, length = 1) const sketch003l = startSketchOn(plane001) |> startProfileAt([ serverDepth + .8, railHeight * 1.75 + 2 ], %) - |> xLine(-serverDepth - .8, %, $seg02) + |> xline(to = -serverDepth - .8, tag = $seg02) |> angledLineToY({ angle: -45, to: railHeight * 1.75 - 1 + 2 }, %) |> xLine(serverDepth - 2 + .8, %) - |> lineTo([profileStartX(%), profileStartY(%)], %) - |> close(%) -const extrude003l = extrude(1, sketch003l) + |> line(end = [profileStartX(%), profileStartY(%)]) + |> close() +const extrude003l = extrude(sketch003l, length = 1) const sketch004l = startSketchOn(plane001) |> startProfileAt([0, 0], %) @@ -150,18 +150,18 @@ const sketch004l = startSketchOn(plane001) to: railHeight * 1.75 + 2 - 1 }, %) |> yLine(-railHeight * 1.75, %) - |> lineTo([profileStartX(%), profileStartY(%)], %) - |> close(%) -const extrude004l = extrude(1, sketch004l) + |> line(end = [profileStartX(%), profileStartY(%)]) + |> close() +const extrude004l = extrude(sketch004l, length = 1) const sketch005l = startSketchOn(plane001) |> startProfileAt([serverDepth - 1.25, 1], %) - |> line([-serverDepth + 2.25, railHeight * 1.75], %, $lineToIntersect4) + |> line(to = [-serverDepth + 2.25, railHeight * 1.75], tag = $lineToIntersect4) |> xLine(1, %) - |> line([serverDepth - 2.25, -railHeight * 1.75], %, $lineToIntersect5) - |> lineTo([profileStartX(%), profileStartY(%)], %) - |> close(%) -const extrude005l = extrude(1, sketch005l) + |> line(to = [serverDepth - 2.25, -railHeight * 1.75], tag = $lineToIntersect5) + |> line(end = [profileStartX(%), profileStartY(%)]) + |> close() +const extrude005l = extrude(sketch005l, length = 1) const sketch006l = startSketchOn(plane001) |> startProfileAt([1, 1], %) @@ -172,9 +172,9 @@ const sketch006l = startSketchOn(plane001) }, %) |> angledLine({ angle: -70, length: 1.414 }, %) |> angledLineToY({ angle: 70 + 180, to: 2 - 1 }, %) - |> lineTo([profileStartX(%), profileStartY(%)], %) - |> close(%) -const extrude006l = extrude(1, sketch006l) + |> line(end = [profileStartX(%), profileStartY(%)]) + |> close() +const extrude006l = extrude(sketch006l, length = 1) const sketch007l = startSketchOn(plane001) |> startProfileAt([ @@ -191,9 +191,9 @@ const sketch007l = startSketchOn(plane001) angle: 70 + 180, to: railHeight * 1.75 + 1 }, %) - |> lineTo([profileStartX(%), profileStartY(%)], %) - |> close(%) -const extrude007l = extrude(1, sketch007l) + |> line(end = [profileStartX(%), profileStartY(%)]) + |> close() +const extrude007l = extrude(sketch007l, length = 1) // right wall const plane002 = { @@ -213,31 +213,31 @@ const sketch001w = startSketchOn(plane002) |> startProfileAt([0, 0], %) |> xLine(depth, %) |> angledLineToY({ angle: -45, to: 1 }, %) - |> xLine(-depth + 2, %, $seg01w) - |> lineTo([profileStartX(%), profileStartY(%)], %) - |> close(%) -const extrude001w = extrude(1, sketch001w) + |> xline(to = -depth + 2, tag = $seg01w) + |> line(end = [profileStartX(%), profileStartY(%)]) + |> close() +const extrude001w = extrude(sketch001w, length = 1) const sketch002w = startSketchOn(plane002) |> startProfileAt([depth, 0], %) |> yLine(railHeight * 1.75 + 2, %) |> angledLineToX({ angle: -135, to: depth - 1 }, %) |> yLine(-railHeight * 1.75, %) - |> lineTo([profileStartX(%), profileStartY(%)], %) - |> close(%) -const extrude002w = extrude(1, sketch002w) + |> line(end = [profileStartX(%), profileStartY(%)]) + |> close() +const extrude002w = extrude(sketch002w, length = 1) const sketch003w = startSketchOn(plane002) |> startProfileAt([depth, railHeight * 1.75 + 2], %) - |> xLine(-depth, %, $seg02w) + |> xline(to = -depth, tag = $seg02w) |> angledLineToY({ angle: -45, to: railHeight * 1.75 - 1 + 2 }, %) |> xLine(depth - 2, %) - |> lineTo([profileStartX(%), profileStartY(%)], %) - |> close(%) -const extrude003w = extrude(1, sketch003w) + |> line(end = [profileStartX(%), profileStartY(%)]) + |> close() +const extrude003w = extrude(sketch003w, length = 1) const sketch004w = startSketchOn(plane002) |> startProfileAt([0, 0], %) @@ -247,18 +247,18 @@ const sketch004w = startSketchOn(plane002) to: railHeight * 1.75 + 2 - 1 }, %) |> yLine(-railHeight * 1.75, %) - |> lineTo([profileStartX(%), profileStartY(%)], %) - |> close(%) -const extrude004w = extrude(1, sketch004w) + |> line(end = [profileStartX(%), profileStartY(%)]) + |> close() +const extrude004w = extrude(sketch004w, length = 1) const sketch005w = startSketchOn(plane002) |> startProfileAt([1, 40.6 + 1.75 / 2], %) |> angledLine({ angle: -23, length: 35.5 }, %) |> angledLine({ angle: -23 + 90 + 45, length: 1.413 }, %) |> angledLineToX({ angle: -23, to: 1 }, %, $lineToIntersect) - |> lineTo([profileStartX(%), profileStartY(%)], %) - |> close(%) -const extrude005w = extrude(1, sketch005w) + |> line(end = [profileStartX(%), profileStartY(%)]) + |> close() +const extrude005w = extrude(sketch005w, length = 1) const sketch006w = startSketchOn(plane002) |> startProfileAt([ @@ -272,22 +272,22 @@ const sketch006w = startSketchOn(plane002) intersectTag: lineToIntersect, offset: 0 }, %, $lineToIntersect2) - |> lineTo([profileStartX(%), profileStartY(%)], %) - |> close(%) -const extrude006w = extrude(1, sketch006w) + |> line(end = [profileStartX(%), profileStartY(%)]) + |> close() +const extrude006w = extrude(sketch006w, length = 1) const sketch007w = startSketchOn(plane002) |> startProfileAt([depth - 1, 60.65 + 1.75 / 2], %) - |> angledLine({ angle: -23 + 180, length: 34.93 }, %, $lineToIntersect3) + |> angledline(to = { angle: -23 + 180, length: 34.93 }, tag = $lineToIntersect3) |> angledLine({ angle: 23 - 90, length: 1.414 }, %) |> angledLineThatIntersects({ angle: -23 + 180, intersectTag: lineToIntersect2, offset: 0 }, %) - |> lineTo([profileStartX(%), profileStartY(%)], %) - |> close(%) -const extrude007w = extrude(1, sketch007w) + |> line(end = [profileStartX(%), profileStartY(%)]) + |> close() +const extrude007w = extrude(sketch007w, length = 1) const sketch008w = startSketchOn(plane002) |> startProfileAt([1, 41.7 + 1.75 / 2], %) @@ -302,27 +302,27 @@ const sketch008w = startSketchOn(plane002) intersectTag: lineToIntersect, offset: 0 }, %) - |> lineTo([profileStartX(%), profileStartY(%)], %) - |> close(%) -const extrude008w = extrude(1, sketch008w) + |> line(end = [profileStartX(%), profileStartY(%)]) + |> close() +const extrude008w = extrude(sketch008w, length = 1) const sketch009w = startSketchOn(plane002) |> startProfileAt([31.2, 33.3 + 1.75 / 2], %) |> angledLine({ angle: -23 - 45, length: 1.414 }, %) |> angledLine({ angle: 90 - 23, length: 28 }, %) |> angledLine({ angle: -23 + 45, length: -1.414 }, %) - |> lineTo([profileStartX(%), profileStartY(%)], %) - |> close(%) -const extrude009w = extrude(1, sketch009w) + |> line(end = [profileStartX(%), profileStartY(%)]) + |> close() +const extrude009w = extrude(sketch009w, length = 1) const sketch010w = startSketchOn(plane002) |> startProfileAt([31.2, 33.3 + 1.75 / 2], %) |> angledLine({ angle: -23 - 45, length: 1.414 }, %) |> angledLine({ angle: 180 - 23, length: 28 }, %) |> angledLine({ angle: -23 + 45, length: 1.414 }, %) - |> lineTo([profileStartX(%), profileStartY(%)], %) - |> close(%) -const extrude010w = extrude(1, sketch010w) + |> line(end = [profileStartX(%), profileStartY(%)]) + |> close() +const extrude010w = extrude(sketch010w, length = 1) const sketch011w = startSketchOn(plane002) |> startProfileAt([ @@ -332,9 +332,9 @@ const sketch011w = startSketchOn(plane002) |> angledLine({ angle: 90 - 23, length: 28 - 2 }, %) |> angledLine({ angle: -23 - 45, length: -1.414 }, %) |> angledLine({ angle: 90 - 23 + 180, length: 28 }, %) - |> lineTo([profileStartX(%), profileStartY(%)], %) - |> close(%) -const extrude011w = extrude(1, sketch011w) + |> line(end = [profileStartX(%), profileStartY(%)]) + |> close() +const extrude011w = extrude(sketch011w, length = 1) const sketch012w = startSketchOn(plane002) |> startProfileAt([ @@ -344,9 +344,9 @@ const sketch012w = startSketchOn(plane002) |> angledLine({ angle: 180 - 23, length: 28 - 2 }, %) |> angledLine({ angle: -23 - 45, length: -1.414 }, %) |> angledLine({ angle: -23, length: 28 }, %) - |> lineTo([profileStartX(%), profileStartY(%)], %) - |> close(%) -const extrude012w = extrude(1, sketch012w) + |> line(end = [profileStartX(%), profileStartY(%)]) + |> close() +const extrude012w = extrude(sketch012w, length = 1) const sketch013w = startSketchOn(plane002) |> startProfileAt([ @@ -356,9 +356,9 @@ const sketch013w = startSketchOn(plane002) |> angledLine({ angle: -23, length: 1 }, %) |> angledLineToX({ angle: -23 + 90, to: 1 }, %) |> yLine(2.56, %) - |> lineTo([profileStartX(%), profileStartY(%)], %) - |> close(%) -const extrude013w = extrude(1, sketch013w) + |> line(end = [profileStartX(%), profileStartY(%)]) + |> close() +const extrude013w = extrude(sketch013w, length = 1) const sketch014w = startSketchOn(plane002) |> startProfileAt([ @@ -368,9 +368,9 @@ const sketch014w = startSketchOn(plane002) |> angledLine({ angle: -23 - 90, length: 36 / 2 }, %) |> angledLine({ angle: -23, length: 1 }, %) |> angledLine({ angle: -23 - 90, length: -36 / 2 }, %) - |> lineTo([profileStartX(%), profileStartY(%)], %) - |> close(%) -const extrude014w = extrude(1, sketch014w) + |> line(end = [profileStartX(%), profileStartY(%)]) + |> close() +const extrude014w = extrude(sketch014w, length = 1) const sketch015w = startSketchOn(plane002) |> startProfileAt([ @@ -380,9 +380,9 @@ const sketch015w = startSketchOn(plane002) |> angledLine({ angle: -23 - 90, length: 36 / 2 }, %) |> angledLine({ angle: -23, length: 1 }, %) |> angledLine({ angle: -23 - 90, length: -36 / 2 }, %) - |> lineTo([profileStartX(%), profileStartY(%)], %) - |> close(%) -const extrude015w = extrude(1, sketch015w) + |> line(end = [profileStartX(%), profileStartY(%)]) + |> close() +const extrude015w = extrude(sketch015w, length = 1) const sketch016w = startSketchOn(plane002) |> startProfileAt([ @@ -392,9 +392,9 @@ const sketch016w = startSketchOn(plane002) |> angledLine({ angle: -23 - 90, length: 36 / 2 }, %) |> angledLine({ angle: -23, length: 1 }, %) |> angledLine({ angle: -23 - 90, length: -36 / 2 }, %) - |> lineTo([profileStartX(%), profileStartY(%)], %) - |> close(%) -const extrude016w = extrude(1, sketch016w) + |> line(end = [profileStartX(%), profileStartY(%)]) + |> close() +const extrude016w = extrude(sketch016w, length = 1) const sketch017w = startSketchOn(plane002) |> startProfileAt([ @@ -412,9 +412,9 @@ const sketch017w = startSketchOn(plane002) angleEnd: -23, radius: 7 / 2 + 1 }, %) - |> lineTo([profileStartX(%), profileStartY(%)], %) - |> close(%) -const extrude017w = extrude(1, sketch017w) + |> line(end = [profileStartX(%), profileStartY(%)]) + |> close() +const extrude017w = extrude(sketch017w, length = 1) const sketch018w = startSketchOn(plane002) |> startProfileAt([ @@ -432,18 +432,18 @@ const sketch018w = startSketchOn(plane002) angleEnd: -23, radius: 7 / 2 + 1 }, %) - |> lineTo([profileStartX(%), profileStartY(%)], %) - |> close(%) -const extrude018w = extrude(1, sketch018w) + |> line(end = [profileStartX(%), profileStartY(%)]) + |> close() +const extrude018w = extrude(sketch018w, length = 1) const sketch019w = startSketchOn(plane002) |> startProfileAt([1, 27.8 + 1.75 / 2], %) |> angledLine({ angle: -23, length: 7 }, %) |> angledLine({ angle: -23 + 90, length: -1 }, %) |> angledLineToX({ angle: -23, to: 1 }, %) - |> lineTo([profileStartX(%), profileStartY(%)], %) - |> close(%) -const extrude019w = extrude(1, sketch019w) + |> line(end = [profileStartX(%), profileStartY(%)]) + |> close() +const extrude019w = extrude(sketch019w, length = 1) const sketch020w = startSketchOn(plane002) |> startProfileAt([ @@ -453,18 +453,18 @@ const sketch020w = startSketchOn(plane002) |> angledLine({ angle: -23, length: 7 }, %) |> angledLine({ angle: -23 + 90, length: -1 }, %) |> angledLine({ angle: -23 + 180, length: 7 }, %) - |> lineTo([profileStartX(%), profileStartY(%)], %) - |> close(%) -const extrude020w = extrude(1, sketch020w) + |> line(end = [profileStartX(%), profileStartY(%)]) + |> close() +const extrude020w = extrude(sketch020w, length = 1) const sketch021w = startSketchOn(plane002) |> startProfileAt([1, 21.9], %) |> angledLineToX({ angle: -23, to: depth - 1 }, %) |> yLine(-1.1, %) |> angledLineToX({ angle: -23, to: 1 }, %) - |> lineTo([profileStartX(%), profileStartY(%)], %) - |> close(%) -const extrude021w = extrude(1, sketch021w) + |> line(end = [profileStartX(%), profileStartY(%)]) + |> close() +const extrude021w = extrude(sketch021w, length = 1) const sketch022w = startSketchOn(plane002) |> startProfileAt([depth - 1, 74.1], %) @@ -474,9 +474,9 @@ const sketch022w = startSketchOn(plane002) }, %) |> xLine(-2.56, %) |> angledLineToX({ angle: -23, to: depth - 1 }, %) - |> lineTo([profileStartX(%), profileStartY(%)], %) - |> close(%) -const extrude022w = extrude(1, sketch022w) + |> line(end = [profileStartX(%), profileStartY(%)]) + |> close() +const extrude022w = extrude(sketch022w, length = 1) const sketch023w = startSketchOn(plane002) |> startProfileAt([1, 69.53 + 1.75], %) @@ -486,27 +486,27 @@ const sketch023w = startSketchOn(plane002) }, %) |> xLine(1.086, %) |> angledLineToX({ angle: 90 - 23, to: 1 }, %) - |> lineTo([profileStartX(%), profileStartY(%)], %) - |> close(%) -const extrude023w = extrude(1, sketch023w) + |> line(end = [profileStartX(%), profileStartY(%)]) + |> close() +const extrude023w = extrude(sketch023w, length = 1) const sketch024w = startSketchOn(plane002) |> startProfileAt([1, 16.5], %) |> angledLineToY({ angle: -23, to: 1 }, %) |> xLine(-2.56, %) |> angledLineToX({ angle: -23, to: 1 }, %) - |> lineTo([profileStartX(%), profileStartY(%)], %) - |> close(%) -const extrude024w = extrude(1, sketch024w) + |> line(end = [profileStartX(%), profileStartY(%)]) + |> close() +const extrude024w = extrude(sketch024w, length = 1) const sketch025w = startSketchOn(plane002) |> startProfileAt([1, 4], %) |> angledLineToY({ angle: -23, to: 1 }, %) |> xLine(-2.56, %) |> angledLineToX({ angle: -23, to: 1 }, %) - |> lineTo([profileStartX(%), profileStartY(%)], %) - |> close(%) -const extrude025w = extrude(1, sketch025w) + |> line(end = [profileStartX(%), profileStartY(%)]) + |> close() +const extrude025w = extrude(sketch025w, length = 1) // Base plane of rack const plane003 = { @@ -520,46 +520,46 @@ const plane003 = { const sketch005 = startSketchOn(plane003) |> startProfileAt([width - 1, 0], %) - |> line([-width + 2, 3], %) - |> line([0, 1], %) - |> line([width - 2, -3], %) - |> lineTo([profileStartX(%), profileStartY(%)], %) - |> close(%) + |> line(to = [-width + 2, 3]) + |> line(to = [0, 1]) + |> line(to = [width - 2, -3]) + |> line(end = [profileStartX(%), profileStartY(%)]) + |> close() -const extrude005 = extrude(1, sketch005) +const extrude005 = extrude(sketch005, length = 1) const sketch006 = startSketchOn(plane003) |> startProfileAt([width - 1, 0 + 2.756], %) - |> line([-width + 2, 3], %) - |> line([0, 1], %) - |> line([width - 2, -3], %) - |> lineTo([profileStartX(%), profileStartY(%)], %) - |> close(%) + |> line(to = [-width + 2, 3]) + |> line(to = [0, 1]) + |> line(to = [width - 2, -3]) + |> line(end = [profileStartX(%), profileStartY(%)]) + |> close() -const extrude006 = extrude(1, sketch006) +const extrude006 = extrude(sketch006, length = 1) const sketch007 = startSketchOn(plane003) |> startProfileAt([width - 1, depth], %) - |> line([-width + 1, -depth + serverDepth + 3.8], %) - |> line([1, 0], %) - |> line([0, -.75], %) + |> line(to = [-width + 1, -depth + serverDepth + 3.8]) + |> line(to = [1, 0]) + |> line(to = [0, -.75]) |> line([ width - 2, depth - serverDepth - 5 + .6 ], %) - |> lineTo([profileStartX(%), profileStartY(%)], %) - |> close(%) -const extrude007 = extrude(1, sketch007) + |> line(end = [profileStartX(%), profileStartY(%)]) + |> close() +const extrude007 = extrude(sketch007, length = 1) const sketch008 = startSketchOn(plane003) |> startProfileAt([width - 1, depth - 2.8], %) - |> line([-width + 2, -depth + serverDepth + 4.4], %) - |> line([0, -1.32], %) - |> line([width - 2, depth - serverDepth - 4.4], %) - |> lineTo([profileStartX(%), profileStartY(%)], %) - |> close(%) + |> line(to = [-width + 2, -depth + serverDepth + 4.4]) + |> line(to = [0, -1.32]) + |> line(to = [width - 2, depth - serverDepth - 4.4]) + |> line(end = [profileStartX(%), profileStartY(%)]) + |> close() -const extrude008 = extrude(1, sketch008) +const extrude008 = extrude(sketch008, length = 1) // Top Plane const plane004 = { @@ -573,45 +573,45 @@ const plane004 = { const sketch005t = startSketchOn(plane004) |> startProfileAt([width - 1, 0], %) - |> line([-width + 2, 3], %) - |> line([0, 1], %) - |> line([width - 2, -3], %) - |> lineTo([profileStartX(%), profileStartY(%)], %) - |> close(%) + |> line(to = [-width + 2, 3]) + |> line(to = [0, 1]) + |> line(to = [width - 2, -3]) + |> line(end = [profileStartX(%), profileStartY(%)]) + |> close() -const extrude005t = extrude(-1, sketch005t) +const extrude005t = extrude(sketch005t, length = -1) const sketch007t = startSketchOn(plane004) |> startProfileAt([width - 1, depth], %) - |> line([-width + 1, -depth + serverDepth + 3.8], %) - |> line([1, 0], %) - |> line([0, -.75], %) + |> line(to = [-width + 1, -depth + serverDepth + 3.8]) + |> line(to = [1, 0]) + |> line(to = [0, -.75]) |> line([ width - 2, depth - serverDepth - 5 + .6 ], %) - |> lineTo([profileStartX(%), profileStartY(%)], %) - |> close(%) -const extrude007t = extrude(-1, sketch007t) + |> line(end = [profileStartX(%), profileStartY(%)]) + |> close() +const extrude007t = extrude(sketch007t, length = -1) const sketch008t = startSketchOn(plane004) |> startProfileAt([width - 1, 0 + 2.756], %) - |> line([-width + 2, 3], %) - |> line([0, 1], %) - |> line([width - 2, -3], %) - |> lineTo([profileStartX(%), profileStartY(%)], %) - |> close(%) -const extrude008t = extrude(-1, sketch008t) + |> line(to = [-width + 2, 3]) + |> line(to = [0, 1]) + |> line(to = [width - 2, -3]) + |> line(end = [profileStartX(%), profileStartY(%)]) + |> close() +const extrude008t = extrude(sketch008t, length = -1) const sketch009t = startSketchOn(plane004) |> startProfileAt([width - 1, depth - 2.8], %) - |> line([-width + 2, -depth + serverDepth + 4.4], %) - |> line([0, -1.32], %) - |> line([width - 2, depth - serverDepth - 4.4], %) - |> lineTo([profileStartX(%), profileStartY(%)], %) - |> close(%) + |> line(to = [-width + 2, -depth + serverDepth + 4.4]) + |> line(to = [0, -1.32]) + |> line(to = [width - 2, depth - serverDepth - 4.4]) + |> line(end = [profileStartX(%), profileStartY(%)]) + |> close() -const extrude009t = extrude(-1, sketch009t) +const extrude009t = extrude(sketch009t, length = -1) // front left vertical rail // Define planes so the rail can be moved @@ -653,7 +653,7 @@ const planeYZfl = { // Base flange const sketch001fl = startSketchOn(planeXZfl) |> startProfileAt([bendRad + thickness, 0], %) - |> angledLine([0, 2 - bendRad - thickness], %, $rectangleSegmentA001fl) + |> angledline(to = [0, 2 - bendRad - thickness], tag = $rectangleSegmentA001fl) |> angledLine([ segAng(rectangleSegmentA001fl) + 90, railHeight * 1.75 @@ -662,14 +662,14 @@ const sketch001fl = startSketchOn(planeXZfl) segAng(rectangleSegmentA001fl), -segLen(rectangleSegmentA001fl) ], %, $rectangleSegmentC001fl) - |> lineTo([profileStartX(%), profileStartY(%)], %) - |> close(%) -const extrude001fl = extrude(thickness, sketch001fl) + |> line(end = [profileStartX(%), profileStartY(%)]) + |> close() +const extrude001fl = extrude(sketch001fl, length = thickness) // First flange const sketch002fl = startSketchOn(planeYZfl) |> startProfileAt([-bendRad - thickness, 0], %) - |> angledLine([180, 0.89 - bendRad - thickness], %, $rectangleSegmentA002fl) + |> angledline(to = [180, 0.89 - bendRad - thickness], tag = $rectangleSegmentA002fl) |> angledLine([ segAng(rectangleSegmentA002fl) - 90, railHeight * 1.75 @@ -678,10 +678,10 @@ const sketch002fl = startSketchOn(planeYZfl) segAng(rectangleSegmentA002fl), -segLen(rectangleSegmentA002fl) ], %, $rectangleSegmentC002fl) - |> lineTo([profileStartX(%), profileStartY(%)], %) - |> close(%) + |> line(end = [profileStartX(%), profileStartY(%)]) + |> close() -const extrude002fl = extrude(thickness, sketch002fl) +const extrude002fl = extrude(sketch002fl, length = thickness) // Bend const sketch003fl = startSketchOn(planeXYfl) @@ -701,9 +701,9 @@ const sketch003fl = startSketchOn(planeXYfl) radius: bendRad }, %) |> yLine(-thickness, %) - |> close(%) + |> close() -const extrude003fl = extrude(railHeight * 1.75, sketch003fl) +const extrude003fl = extrude(sketch003fl, length = railHeight * 1.75) // define slots const sketch010fl = startSketchOn(extrude001fl, 'START') @@ -718,13 +718,13 @@ const sketch010fl = startSketchOn(extrude001fl, 'START') ], %) |> xLine(-0.75 + .438, %) |> tangentialArcTo([profileStartX(%), profileStartY(%)], %) - |> close(%) + |> close() |> patternLinear2d({ axis: [0, 1], instances: 2, distance: 1.22 }, %) -const extrude010fl = extrude(-thickness, sketch010fl) +const extrude010fl = extrude(sketch010fl, length = -thickness) // define slots const sketch011fl = startSketchOn(extrude001fl, 'START') @@ -739,9 +739,9 @@ const sketch011fl = startSketchOn(extrude001fl, 'START') ], %) |> xLine(-0.75 + .438, %) |> tangentialArcTo([profileStartX(%), profileStartY(%)], %) - |> close(%) + |> close() -const extrude011fl = extrude(-thickness, sketch011fl) +const extrude011fl = extrude(sketch011fl, length = -thickness) // define slots const sketch012fl = startSketchOn(extrude001fl, 'START') @@ -756,13 +756,13 @@ const sketch012fl = startSketchOn(extrude001fl, 'START') ], %) |> xLine(-0.75 + .438, %) |> tangentialArcTo([profileStartX(%), profileStartY(%)], %) - |> close(%) + |> close() |> patternLinear2d({ axis: [0, -1], instances: 2, distance: 1.22 }, %) -const extrude012fl = extrude(-thickness, sketch012fl) +const extrude012fl = extrude(sketch012fl, length = -thickness) // FRONT RIGHT VERTICAL RAIL // Define planes so the rail can be moved @@ -804,7 +804,7 @@ const planeYZfr = { // Base flange const sketch001fr = startSketchOn(planeXZfr) |> startProfileAt([bendRad + thickness, 0], %) - |> angledLine([0, 2 - bendRad - thickness], %, $rectangleSegmentA001fr) + |> angledline(to = [0, 2 - bendRad - thickness], tag = $rectangleSegmentA001fr) |> angledLine([ segAng(rectangleSegmentA001fr) + 90, railHeight * 1.75 @@ -813,14 +813,14 @@ const sketch001fr = startSketchOn(planeXZfr) segAng(rectangleSegmentA001fr), -segLen(rectangleSegmentA001fr) ], %, $rectangleSegmentC001fr) - |> lineTo([profileStartX(%), profileStartY(%)], %) - |> close(%) -const extrude001fr = extrude(thickness, sketch001fr) + |> line(end = [profileStartX(%), profileStartY(%)]) + |> close() +const extrude001fr = extrude(sketch001fr, length = thickness) // First flange const sketch002fr = startSketchOn(planeYZfr) |> startProfileAt([0.89, 0], %) - |> angledLine([180, 0.89 - bendRad - thickness], %, $rectangleSegmentA002fr) + |> angledline(to = [180, 0.89 - bendRad - thickness], tag = $rectangleSegmentA002fr) |> angledLine([ segAng(rectangleSegmentA002fr) - 90, railHeight * 1.75 @@ -829,10 +829,10 @@ const sketch002fr = startSketchOn(planeYZfr) segAng(rectangleSegmentA002fr), -segLen(rectangleSegmentA002fr) ], %, $rectangleSegmentC002fr) - |> lineTo([profileStartX(%), profileStartY(%)], %) - |> close(%) + |> line(end = [profileStartX(%), profileStartY(%)]) + |> close() -const extrude002fr = extrude(thickness, sketch002fr) +const extrude002fr = extrude(sketch002fr, length = thickness) // Bend const sketch003fr = startSketchOn(planeXYfr) @@ -851,9 +851,9 @@ const sketch003fr = startSketchOn(planeXYfr) angleEnd: 0, radius: bendRad + thickness }, %) - |> close(%) + |> close() -const extrude003fr = extrude(railHeight * 1.75, sketch003fr) +const extrude003fr = extrude(sketch003fr, length = railHeight * 1.75) // define slots const sketch010fr = startSketchOn(extrude001fr, 'START') @@ -868,13 +868,13 @@ const sketch010fr = startSketchOn(extrude001fr, 'START') ], %) |> xLine(-0.75 + .438, %) |> tangentialArcTo([profileStartX(%), profileStartY(%)], %) - |> close(%) + |> close() |> patternLinear2d({ axis: [0, 1], instances: 2, distance: 1.22 }, %) -const extrude010fr = extrude(-thickness, sketch010fr) +const extrude010fr = extrude(sketch010fr, length = -thickness) // define slots const sketch011fr = startSketchOn(extrude001fr, 'START') @@ -889,9 +889,9 @@ const sketch011fr = startSketchOn(extrude001fr, 'START') ], %) |> xLine(-0.75 + .438, %) |> tangentialArcTo([profileStartX(%), profileStartY(%)], %) - |> close(%) + |> close() -const extrude011fr = extrude(-thickness, sketch011fr) +const extrude011fr = extrude(sketch011fr, length = -thickness) // define slots const sketch012fr = startSketchOn(extrude001fr, 'START') @@ -906,13 +906,13 @@ const sketch012fr = startSketchOn(extrude001fr, 'START') ], %) |> xLine(-0.75 + .438, %) |> tangentialArcTo([profileStartX(%), profileStartY(%)], %) - |> close(%) + |> close() |> patternLinear2d({ axis: [0, -1], instances: 2, distance: 1.22 }, %) -const extrude012fr = extrude(-thickness, sketch012fr) +const extrude012fr = extrude(sketch012fr, length = -thickness) // RIGHT REAR VERTICAL RAIL // Define planes so the rail can be moved @@ -954,7 +954,7 @@ const planeYZrr = { // Base flange const sketch001rr = startSketchOn(planeXZrr) |> startProfileAt([bendRad + thickness, 0], %) - |> angledLine([0, 2 - bendRad - thickness], %, $rectangleSegmentA001rr) + |> angledline(to = [0, 2 - bendRad - thickness], tag = $rectangleSegmentA001rr) |> angledLine([ segAng(rectangleSegmentA001rr) + 90, railHeight * 1.75 @@ -963,14 +963,14 @@ const sketch001rr = startSketchOn(planeXZrr) segAng(rectangleSegmentA001rr), -segLen(rectangleSegmentA001rr) ], %, $rectangleSegmentC001rr) - |> lineTo([profileStartX(%), profileStartY(%)], %) - |> close(%) -const extrude001rr = extrude(thickness, sketch001rr) + |> line(end = [profileStartX(%), profileStartY(%)]) + |> close() +const extrude001rr = extrude(sketch001rr, length = thickness) // First flange const sketch002rr = startSketchOn(planeYZrr) |> startProfileAt([0.89, 0], %) - |> angledLine([180, 0.89 - bendRad - thickness], %, $rectangleSegmentA002rr) + |> angledline(to = [180, 0.89 - bendRad - thickness], tag = $rectangleSegmentA002rr) |> angledLine([ segAng(rectangleSegmentA002rr) - 90, railHeight * 1.75 @@ -979,10 +979,10 @@ const sketch002rr = startSketchOn(planeYZrr) segAng(rectangleSegmentA002rr), -segLen(rectangleSegmentA002rr) ], %, $rectangleSegmentC002rr) - |> lineTo([profileStartX(%), profileStartY(%)], %) - |> close(%) + |> line(end = [profileStartX(%), profileStartY(%)]) + |> close() -const extrude002rr = extrude(thickness, sketch002rr) +const extrude002rr = extrude(sketch002rr, length = thickness) // Bend const sketch003rr = startSketchOn(planeXYrr) @@ -1001,9 +1001,9 @@ const sketch003rr = startSketchOn(planeXYrr) angleEnd: 0, radius: bendRad }, %) - |> close(%) + |> close() -const extrude003rr = extrude(railHeight * 1.75, sketch003rr) +const extrude003rr = extrude(sketch003rr, length = railHeight * 1.75) // define slots const sketch010rr = startSketchOn(extrude001rr, 'START') @@ -1018,13 +1018,13 @@ const sketch010rr = startSketchOn(extrude001rr, 'START') ], %) |> xLine(-0.75 + .438, %) |> tangentialArcTo([profileStartX(%), profileStartY(%)], %) - |> close(%) + |> close() |> patternLinear2d({ axis: [0, 1], instances: 2, distance: 1.22 }, %) -const extrude010rr = extrude(-thickness, sketch010rr) +const extrude010rr = extrude(sketch010rr, length = -thickness) // define slots const sketch011rr = startSketchOn(extrude001rr, 'START') @@ -1039,9 +1039,9 @@ const sketch011rr = startSketchOn(extrude001rr, 'START') ], %) |> xLine(-0.75 + .438, %) |> tangentialArcTo([profileStartX(%), profileStartY(%)], %) - |> close(%) + |> close() -const extrude011rr = extrude(-thickness, sketch011rr) +const extrude011rr = extrude(sketch011rr, length = -thickness) // define slots const sketch012rr = startSketchOn(extrude001rr, 'START') @@ -1056,13 +1056,13 @@ const sketch012rr = startSketchOn(extrude001rr, 'START') ], %) |> xLine(-0.75 + .438, %) |> tangentialArcTo([profileStartX(%), profileStartY(%)], %) - |> close(%) + |> close() |> patternLinear2d({ axis: [0, -1], instances: 2, distance: 1.22 }, %) -const extrude012rr = extrude(-thickness, sketch012rr) +const extrude012rr = extrude(sketch012rr, length = -thickness) // REAR LEFT VETCIAL RAIL // Define planes so the rail can be moved @@ -1103,7 +1103,7 @@ const planeYZrl = { // Base flange const sketch001rl = startSketchOn(planeXZrl) |> startProfileAt([bendRad + thickness, 0], %) - |> angledLine([0, 2 - bendRad - thickness], %, $rectangleSegmentA001rl) + |> angledline(to = [0, 2 - bendRad - thickness], tag = $rectangleSegmentA001rl) |> angledLine([ segAng(rectangleSegmentA001rl) + 90, railHeight * 1.75 @@ -1112,14 +1112,14 @@ const sketch001rl = startSketchOn(planeXZrl) segAng(rectangleSegmentA001rl), -segLen(rectangleSegmentA001rl) ], %, $rectangleSegmentC001rl) - |> lineTo([profileStartX(%), profileStartY(%)], %) - |> close(%) -const extrude001rl = extrude(thickness, sketch001rl) + |> line(end = [profileStartX(%), profileStartY(%)]) + |> close() +const extrude001rl = extrude(sketch001rl, length = thickness) // First flange const sketch002rl = startSketchOn(planeYZrl) |> startProfileAt([-bendRad - thickness, 0], %) - |> angledLine([180, 0.89 - bendRad - thickness], %, $rectangleSegmentA002rl) + |> angledline(to = [180, 0.89 - bendRad - thickness], tag = $rectangleSegmentA002rl) |> angledLine([ segAng(rectangleSegmentA002rl) - 90, railHeight * 1.75 @@ -1128,10 +1128,10 @@ const sketch002rl = startSketchOn(planeYZrl) segAng(rectangleSegmentA002rl), -segLen(rectangleSegmentA002rl) ], %, $rectangleSegmentC002rl) - |> lineTo([profileStartX(%), profileStartY(%)], %) - |> close(%) + |> line(end = [profileStartX(%), profileStartY(%)]) + |> close() -const extrude002rl = extrude(thickness, sketch002rl) +const extrude002rl = extrude(sketch002rl, length = thickness) // Bend const sketch003rl = startSketchOn(planeXYrl) @@ -1150,9 +1150,9 @@ const sketch003rl = startSketchOn(planeXYrl) angleEnd: 90, radius: bendRad + thickness }, %) - |> close(%) + |> close() -const extrude003rl = extrude(railHeight * 1.75, sketch003rl) +const extrude003rl = extrude(sketch003rl, length = railHeight * 1.75) // define slots const sketch010rl = startSketchOn(extrude001rl, 'START') @@ -1167,13 +1167,13 @@ const sketch010rl = startSketchOn(extrude001rl, 'START') ], %) |> xLine(-0.75 + .438, %) |> tangentialArcTo([profileStartX(%), profileStartY(%)], %) - |> close(%) + |> close() |> patternLinear2d({ axis: [0, 1], instances: 2, distance: 1.22 }, %) -const extrude010rl = extrude(-thickness, sketch010rl) +const extrude010rl = extrude(sketch010rl, length = -thickness) // define slots const sketch011rl = startSketchOn(extrude001rl, 'START') @@ -1188,9 +1188,9 @@ const sketch011rl = startSketchOn(extrude001rl, 'START') ], %) |> xLine(-0.75 + .438, %) |> tangentialArcTo([profileStartX(%), profileStartY(%)], %) - |> close(%) + |> close() -const extrude011rl = extrude(-thickness, sketch011rl) +const extrude011rl = extrude(sketch011rl, length = -thickness) // define slots const sketch012rl = startSketchOn(extrude001rl, 'START') @@ -1205,13 +1205,13 @@ const sketch012rl = startSketchOn(extrude001rl, 'START') ], %) |> xLine(-0.75 + .438, %) |> tangentialArcTo([profileStartX(%), profileStartY(%)], %) - |> close(%) + |> close() |> patternLinear2d({ axis: [0, -1], instances: 2, distance: 1.22 }, %) -const extrude012rl = extrude(-thickness, sketch012rl) +const extrude012rl = extrude(sketch012rl, length = -thickness) // Define planes so the server can be moved fn streamServer = (serverPos) => { @@ -1243,15 +1243,15 @@ fn streamServer = (serverPos) => { const sketch001s = startSketchOn(planeXYs) |> startProfileAt([1 + 1.2, 1], %) - |> angledLine([0, 17.2], %, $rectangleSegmentA001) - |> angledLine([segAng(rectangleSegmentA001) + 90, 29], %, $rectangleSegmentB001) + |> angledline(to = [0, 17.2], tag = $rectangleSegmentA001) + |> angledline(to = [segAng(rectangleSegmentA001) + 90, 29], tag = $rectangleSegmentB001) |> angledLine([ segAng(rectangleSegmentA001), -segLen(rectangleSegmentA001) ], %, $rectangleSegmentC001) - |> lineTo([profileStartX(%), profileStartY(%)], %, $seg01) - |> close(%) - const extrude001s = extrude(7, sketch001s) + |> line(end = [profileStartX(%), profileStartY(%)]) + |> close() + const extrude001s = extrude(sketch001s, length = 7) const sketch002s = startSketchOn(planeXZs) |> startProfileAt([-1, 4.114 + 1 + serverPos * 1.75], %) @@ -1270,12 +1270,12 @@ fn streamServer = (serverPos) => { ], %) |> xLine(-0.52, %) |> yLine(-0.42, %) - |> line([0.34, -0.15], %) + |> line(to = [0.34, -0.15]) |> yLine(-2.97, %) - |> lineTo([profileStartX(%), profileStartY(%)], %) - |> close(%) + |> line(end = [profileStartX(%), profileStartY(%)]) + |> close() - const extrude002s = extrude(1.8 / 2, sketch002s) + const extrude002s = extrude(sketch002s, length = 1.8 / 2) const sketch003s = startSketchOn(planeXZs2) |> startProfileAt([-1, 4.114 + 1 + serverPos * 1.75], %) @@ -1294,12 +1294,12 @@ fn streamServer = (serverPos) => { ], %) |> xLine(-0.52, %) |> yLine(-0.42, %) - |> line([0.34, -0.15], %) + |> line(to = [0.34, -0.15]) |> yLine(-2.97, %) - |> lineTo([profileStartX(%), profileStartY(%)], %) - |> close(%) + |> line(end = [profileStartX(%), profileStartY(%)]) + |> close() - const extrude003s = extrude(1.8 / 2, sketch003s) + const extrude003s = extrude(sketch003s, length = 1.8 / 2) return extrude003s } diff --git a/src/wasm-lib/tests/executor/inputs/sketch-on-chamfer-two-times-different-order.kcl b/src/wasm-lib/tests/executor/inputs/sketch-on-chamfer-two-times-different-order.kcl index b1c79c80d0..e95c304260 100644 --- a/src/wasm-lib/tests/executor/inputs/sketch-on-chamfer-two-times-different-order.kcl +++ b/src/wasm-lib/tests/executor/inputs/sketch-on-chamfer-two-times-different-order.kcl @@ -1,6 +1,6 @@ const sketch001 = startSketchOn('XZ') |> startProfileAt([75.8, 317.2], %) // [$startCapTag, $EndCapTag] - |> angledLine([0, 268.43], %, $rectangleSegmentA001) + |> angledline(to = [0, 268.43], tag = $rectangleSegmentA001) |> angledLine([ segAng(rectangleSegmentA001) - 90, 217.26 @@ -9,9 +9,9 @@ const sketch001 = startSketchOn('XZ') segAng(rectangleSegmentA001), -segLen(rectangleSegmentA001) ], %) - |> lineTo([profileStartX(%), profileStartY(%)], %, $seg02) - |> close(%) -const extrude001 = extrude(100, sketch001) + |> line(end = [profileStartX(%), profileStartY(%)]) + |> close() +const extrude001 = extrude(sketch001, length = 100) |> fillet({ radius: 20, tags: [seg01] }, %) |> chamfer({ length: 50, @@ -21,7 +21,7 @@ const extrude001 = extrude(100, sketch001) const sketch003 = startSketchOn(extrude001, seg04) |> startProfileAt([-69.1, 277.34], %) - |> angledLine([0, 41.48], %, $rectangleSegmentA003) + |> angledline(to = [0, 41.48], tag = $rectangleSegmentA003) |> angledLine([ segAng(rectangleSegmentA003) - 90, 104.8 @@ -30,11 +30,11 @@ const sketch003 = startSketchOn(extrude001, seg04) segAng(rectangleSegmentA003), -segLen(rectangleSegmentA003) ], %, $rectangleSegmentC002) - |> lineTo([profileStartX(%), profileStartY(%)], %) - |> close(%) + |> line(end = [profileStartX(%), profileStartY(%)]) + |> close() const sketch002 = startSketchOn(extrude001, seg03) |> startProfileAt([159.25, 278.35], %) - |> angledLine([0, 40.82], %, $rectangleSegmentA002) + |> angledline(to = [0, 40.82], tag = $rectangleSegmentA002) |> angledLine([ segAng(rectangleSegmentA002) - 90, 132.27 @@ -43,6 +43,6 @@ const sketch002 = startSketchOn(extrude001, seg03) segAng(rectangleSegmentA002), -segLen(rectangleSegmentA002) ], %, $rectangleSegmentC001) - |> lineTo([profileStartX(%), profileStartY(%)], %) - |> close(%) -const extrude002 = extrude(50, sketch002) + |> line(end = [profileStartX(%), profileStartY(%)]) + |> close() +const extrude002 = extrude(sketch002, length = 50) diff --git a/src/wasm-lib/tests/executor/inputs/sketch-on-chamfer-two-times.kcl b/src/wasm-lib/tests/executor/inputs/sketch-on-chamfer-two-times.kcl index 2ab94d0113..bc1a80ec40 100644 --- a/src/wasm-lib/tests/executor/inputs/sketch-on-chamfer-two-times.kcl +++ b/src/wasm-lib/tests/executor/inputs/sketch-on-chamfer-two-times.kcl @@ -1,6 +1,6 @@ const sketch001 = startSketchOn('XZ') |> startProfileAt([75.8, 317.2], %) // [$startCapTag, $EndCapTag] - |> angledLine([0, 268.43], %, $rectangleSegmentA001) + |> angledline(to = [0, 268.43], tag = $rectangleSegmentA001) |> angledLine([ segAng(rectangleSegmentA001) - 90, 217.26 @@ -9,9 +9,9 @@ const sketch001 = startSketchOn('XZ') segAng(rectangleSegmentA001), -segLen(rectangleSegmentA001) ], %) - |> lineTo([profileStartX(%), profileStartY(%)], %, $seg02) - |> close(%) -const extrude001 = extrude(100, sketch001) + |> line(end = [profileStartX(%), profileStartY(%)]) + |> close() +const extrude001 = extrude(sketch001, length = 100) |> fillet({ radius: 20, tags: [seg01] }, %) |> chamfer({ length: 50, tags: [seg02] }, %, $seg04) |> chamfer({ @@ -21,7 +21,7 @@ const extrude001 = extrude(100, sketch001) const sketch003 = startSketchOn(extrude001, seg04) |> startProfileAt([-69.1, 277.34], %) - |> angledLine([0, 41.48], %, $rectangleSegmentA003) + |> angledline(to = [0, 41.48], tag = $rectangleSegmentA003) |> angledLine([ segAng(rectangleSegmentA003) - 90, 104.8 @@ -30,11 +30,11 @@ const sketch003 = startSketchOn(extrude001, seg04) segAng(rectangleSegmentA003), -segLen(rectangleSegmentA003) ], %, $rectangleSegmentC002) - |> lineTo([profileStartX(%), profileStartY(%)], %) - |> close(%) + |> line(end = [profileStartX(%), profileStartY(%)]) + |> close() const sketch002 = startSketchOn(extrude001, seg03) |> startProfileAt([159.25, 278.35], %) - |> angledLine([0, 40.82], %, $rectangleSegmentA002) + |> angledline(to = [0, 40.82], tag = $rectangleSegmentA002) |> angledLine([ segAng(rectangleSegmentA002) - 90, 132.27 @@ -43,6 +43,6 @@ const sketch002 = startSketchOn(extrude001, seg03) segAng(rectangleSegmentA002), -segLen(rectangleSegmentA002) ], %, $rectangleSegmentC001) - |> lineTo([profileStartX(%), profileStartY(%)], %) - |> close(%) -const extrude002 = extrude(50, sketch002) + |> line(end = [profileStartX(%), profileStartY(%)]) + |> close() +const extrude002 = extrude(sketch002, length = 50) diff --git a/src/wasm-lib/tests/executor/inputs/sketch_on_face.kcl b/src/wasm-lib/tests/executor/inputs/sketch_on_face.kcl index d61cdddee3..e19c06eb29 100644 --- a/src/wasm-lib/tests/executor/inputs/sketch_on_face.kcl +++ b/src/wasm-lib/tests/executor/inputs/sketch_on_face.kcl @@ -1,15 +1,15 @@ part001 = startSketchOn('XY') |> startProfileAt([11.19, 28.35], %) - |> line([28.67, -13.25], %, $here) - |> line([-4.12, -22.81], %) - |> line([-33.24, 14.55], %) - |> close(%) - |> extrude(5, %) + |> line(to = [28.67, -13.25], tag = $here) + |> line(to = [-4.12, -22.81]) + |> line(to = [-33.24, 14.55]) + |> close() + |> extrude(length = 5) part002 = startSketchOn(part001, here) |> startProfileAt([0, 0], %) - |> line([0, 10], %) - |> line([10, 0], %) - |> line([0, -10], %) - |> close(%) - |> extrude(5, %) + |> line(to = [0, 10]) + |> line(to = [10, 0]) + |> line(to = [0, -10]) + |> close() + |> extrude(length = 5) diff --git a/src/wasm-lib/tests/executor/inputs/sketch_on_face_after_fillets_referencing_face.kcl b/src/wasm-lib/tests/executor/inputs/sketch_on_face_after_fillets_referencing_face.kcl index 0fd1ad18a9..3f2b78e911 100644 --- a/src/wasm-lib/tests/executor/inputs/sketch_on_face_after_fillets_referencing_face.kcl +++ b/src/wasm-lib/tests/executor/inputs/sketch_on_face_after_fillets_referencing_face.kcl @@ -25,13 +25,13 @@ filletR = 0.25 // Sketch the bracket and extrude with fillets bracket = startSketchOn('XY') |> startProfileAt([0, 0], %) - |> line([0, wallMountL], %, $outerEdge) - |> line([-shelfMountL, 0], %, $seg01) - |> line([0, -thickness], %) - |> line([shelfMountL - thickness, 0], %, $innerEdge) - |> line([0, -wallMountL + thickness], %) - |> close(%) - |> extrude(width, %) + |> line(to = [0, wallMountL], tag = $outerEdge) + |> line(to = [-shelfMountL, 0], tag = $seg01) + |> line(to = [0, -thickness]) + |> line(to = [shelfMountL - thickness, 0], tag = $innerEdge) + |> line(to = [0, -wallMountL + thickness]) + |> close() + |> extrude(length = width) |> fillet({ radius: filletR, tags: [ @@ -47,9 +47,9 @@ bracket = startSketchOn('XY') sketch001 = startSketchOn(bracket, seg01) |> startProfileAt([4.28, 3.83], %) - |> line([2.17, -0.03], %) - |> line([-0.07, -1.8], %) - |> line([-2.07, 0.05], %) - |> lineTo([profileStartX(%), profileStartY(%)], %) - |> close(%) - |> extrude(10, %) + |> line(to = [2.17, -0.03]) + |> line(to = [-0.07, -1.8]) + |> line(to = [-2.07, 0.05]) + |> line(end = [profileStartX(%), profileStartY(%)]) + |> close() + |> extrude(length = 10) diff --git a/src/wasm-lib/tests/executor/inputs/sketch_on_face_circle_tagged.kcl b/src/wasm-lib/tests/executor/inputs/sketch_on_face_circle_tagged.kcl index 0353ef23c1..3ed5865e95 100644 --- a/src/wasm-lib/tests/executor/inputs/sketch_on_face_circle_tagged.kcl +++ b/src/wasm-lib/tests/executor/inputs/sketch_on_face_circle_tagged.kcl @@ -1,16 +1,16 @@ fn cube = (pos, scale) => { const sg = startSketchOn('XY') |> startProfileAt(pos, %) - |> line([0, scale], %) - |> line([scale, 0], %) - |> line([0, -scale], %) + |> line(to = [0, scale]) + |> line(to = [scale, 0]) + |> line(to = [0, -scale]) return sg } const part001 = cube([0,0], 20) - |> close(%) - |> extrude(20, %) + |> close() + |> extrude(length = 20) const part002 = startSketchOn(part001, "end") |> circle({ center: [0, 0], radius: 5 }, %, $myCircle) - |> extrude(5, %) + |> extrude(length = 5) diff --git a/src/wasm-lib/tests/executor/inputs/sketch_on_face_end.kcl b/src/wasm-lib/tests/executor/inputs/sketch_on_face_end.kcl index 26d8e96fd0..8e9a2c3b14 100644 --- a/src/wasm-lib/tests/executor/inputs/sketch_on_face_end.kcl +++ b/src/wasm-lib/tests/executor/inputs/sketch_on_face_end.kcl @@ -1,20 +1,20 @@ fn cube = (pos, scale) => { const sg = startSketchOn('XY') |> startProfileAt(pos, %) - |> line([0, scale], %) - |> line([scale, 0], %) - |> line([0, -scale], %) + |> line(to = [0, scale]) + |> line(to = [scale, 0]) + |> line(to = [0, -scale]) return sg } const part001 = cube([0,0], 20) - |> close(%) - |> extrude(20, %) + |> close() + |> extrude(length = 20) const part002 = startSketchOn(part001, "END") |> startProfileAt([0, 0], %) - |> line([0, 10], %) - |> line([10, 0], %) - |> line([0, -10], %) - |> close(%) - |> extrude(5, %) + |> line(to = [0, 10]) + |> line(to = [10, 0]) + |> line(to = [0, -10]) + |> close() + |> extrude(length = 5) diff --git a/src/wasm-lib/tests/executor/inputs/sketch_on_face_end_negative_extrude.kcl b/src/wasm-lib/tests/executor/inputs/sketch_on_face_end_negative_extrude.kcl index abad043c87..6727c743da 100644 --- a/src/wasm-lib/tests/executor/inputs/sketch_on_face_end_negative_extrude.kcl +++ b/src/wasm-lib/tests/executor/inputs/sketch_on_face_end_negative_extrude.kcl @@ -1,20 +1,20 @@ fn cube = (pos, scale) => { const sg = startSketchOn('XY') |> startProfileAt(pos, %) - |> line([0, scale], %) - |> line([scale, 0], %) - |> line([0, -scale], %) + |> line(to = [0, scale]) + |> line(to = [scale, 0]) + |> line(to = [0, -scale]) return sg } const part001 = cube([0,0], 20) - |> close(%) - |> extrude(20, %) + |> close() + |> extrude(length = 20) const part002 = startSketchOn(part001, "END") |> startProfileAt([0, 0], %) - |> line([0, 10], %) - |> line([10, 0], %) - |> line([0, -10], %) - |> close(%) - |> extrude(-5, %) + |> line(to = [0, 10]) + |> line(to = [10, 0]) + |> line(to = [0, -10]) + |> close() + |> extrude(length = -5) diff --git a/src/wasm-lib/tests/executor/inputs/sketch_on_face_start.kcl b/src/wasm-lib/tests/executor/inputs/sketch_on_face_start.kcl index f6236adead..b161f03804 100644 --- a/src/wasm-lib/tests/executor/inputs/sketch_on_face_start.kcl +++ b/src/wasm-lib/tests/executor/inputs/sketch_on_face_start.kcl @@ -1,20 +1,20 @@ fn cube = (pos, scale) => { const sg = startSketchOn('XY') |> startProfileAt(pos, %) - |> line([0, scale], %) - |> line([scale, 0], %) - |> line([0, -scale], %) + |> line(to = [0, scale]) + |> line(to = [scale, 0]) + |> line(to = [0, -scale]) return sg } const part001 = cube([0,0], 20) - |> close(%) - |> extrude(20, %) + |> close() + |> extrude(length = 20) const part002 = startSketchOn(part001, "start") |> startProfileAt([0, 0], %) - |> line([0, 10], %) - |> line([10, 0], %) - |> line([0, -10], %) - |> close(%) - |> extrude(5, %) + |> line(to = [0, 10]) + |> line(to = [10, 0]) + |> line(to = [0, -10]) + |> close() + |> extrude(length = 5) diff --git a/src/wasm-lib/tests/executor/inputs/tangential_arc.kcl b/src/wasm-lib/tests/executor/inputs/tangential_arc.kcl index 4f9be6b0f1..d74d5dce4f 100644 --- a/src/wasm-lib/tests/executor/inputs/tangential_arc.kcl +++ b/src/wasm-lib/tests/executor/inputs/tangential_arc.kcl @@ -1,5 +1,5 @@ const boxSketch = startSketchAt([0, 0]) - |> line([0, 10], %) + |> line(to = [0, 10]) |> tangentialArc({radius: 5, offset: 90}, %) - |> line([5, -15], %) - |> extrude(10, %) + |> line(to = [5, -15]) + |> extrude(length = 10) diff --git a/src/wasm-lib/tests/executor/inputs/test-circle-extrude.kcl b/src/wasm-lib/tests/executor/inputs/test-circle-extrude.kcl index 2b493e1e18..8057fe8237 100644 --- a/src/wasm-lib/tests/executor/inputs/test-circle-extrude.kcl +++ b/src/wasm-lib/tests/executor/inputs/test-circle-extrude.kcl @@ -1,6 +1,6 @@ const sketch002 = startSketchOn('XZ') |> startProfileAt([-108.83, -57.48], %) - |> angledLine([0, 105.13], %, $rectangleSegmentA001) + |> angledline(to = [0, 105.13], tag = $rectangleSegmentA001) |> angledLine([ segAng(rectangleSegmentA001) - 90, 77.9 @@ -9,7 +9,7 @@ const sketch002 = startSketchOn('XZ') segAng(rectangleSegmentA001), -segLen(rectangleSegmentA001) ], %) - |> close(%) + |> close() const sketch001 = startSketchOn('XZ') |> circle({ center = [318.33, 168.1], diff --git a/src/wasm-lib/tests/executor/inputs/xz_plane.kcl b/src/wasm-lib/tests/executor/inputs/xz_plane.kcl index 2a293c1f70..03fcdbd911 100644 --- a/src/wasm-lib/tests/executor/inputs/xz_plane.kcl +++ b/src/wasm-lib/tests/executor/inputs/xz_plane.kcl @@ -1,6 +1,6 @@ part001 = startSketchOn('XZ') |> startProfileAt([0, 0], %) - |> lineTo([100, 100], %) - |> lineTo([100, 0], %) - |> close(%) - |> extrude(5 + 7, %) + |> line(end = [100, 100]) + |> line(end = [100, 0]) + |> close() + |> extrude(length = 5 + 7) diff --git a/src/wasm-lib/tests/executor/main.rs b/src/wasm-lib/tests/executor/main.rs index 748d333436..061c021371 100644 --- a/src/wasm-lib/tests/executor/main.rs +++ b/src/wasm-lib/tests/executor/main.rs @@ -30,7 +30,7 @@ async fn kcl_test_fillet_duplicate_tags() { assert!(result.is_err()); assert_eq!( result.err().unwrap().to_string(), - r#"type: KclErrorDetails { source_ranges: [SourceRange([203, 249, 0])], message: "Duplicate tags are not allowed." }"#, + r#"type: KclErrorDetails { source_ranges: [SourceRange([226, 272, 0])], message: "Duplicate tags are not allowed." }"#, ); } @@ -49,7 +49,7 @@ async fn kcl_test_execute_engine_error_return() { assert!(result.is_err()); assert_eq!( result.err().unwrap().to_string(), - r#"engine: KclErrorDetails { source_ranges: [SourceRange([216, 229, 0])], message: "Modeling command failed: [ApiError { error_code: BadRequest, message: \"The path is not closed. Solid2D construction requires a closed path!\" }]" }"#, + r#"engine: KclErrorDetails { source_ranges: [SourceRange([224, 243, 0])], message: "Modeling command failed: [ApiError { error_code: BadRequest, message: \"The path is not closed. Solid2D construction requires a closed path!\" }]" }"#, ); } @@ -708,7 +708,7 @@ part002 = startSketchOn(part001, part001.sketch.tags.here) assert!(result.is_err()); assert_eq!( result.err().unwrap().to_string(), - r#"semantic: KclErrorDetails { source_ranges: [SourceRange([88, 133, 0]), SourceRange([210, 226, 0])], message: "could not sketch tangential arc, because its center would be infinitely far away in the X direction" }"# + r#"semantic: KclErrorDetails { source_ranges: [SourceRange([88, 133, 0]), SourceRange([214, 230, 0])], message: "could not sketch tangential arc, because its center would be infinitely far away in the X direction" }"# ); } @@ -765,7 +765,7 @@ async fn kcl_test_stdlib_kcl_error_right_code_path() { assert!(result.is_err()); assert_eq!( result.err().unwrap().to_string(), - r#"semantic: KclErrorDetails { source_ranges: [SourceRange([151, 189, 0])], message: "Expected an argument at index 1" }"#, + r#"semantic: KclErrorDetails { source_ranges: [SourceRange([156, 194, 0])], message: "Expected an argument at index 1" }"#, ); } @@ -835,7 +835,7 @@ part = rectShape([0, 0], 20, 20) assert!(result.is_err()); assert_eq!( result.err().unwrap().to_string(), - r#"semantic: KclErrorDetails { source_ranges: [SourceRange([870, 874, 0])], message: "Argument at index 0 was supposed to be type kcl_lib::std::shapes::CircleData but found string (text)" }"#, + r#"semantic: KclErrorDetails { source_ranges: [SourceRange([894, 898, 0])], message: "Argument at index 0 was supposed to be type kcl_lib::std::shapes::CircleData but found string (text)" }"#, ); } @@ -920,7 +920,7 @@ async fn kcl_test_revolve_bad_angle_low() { assert!(result.is_err()); assert_eq!( result.err().unwrap().to_string(), - r#"semantic: KclErrorDetails { source_ranges: [SourceRange([272, 308, 0])], message: "Expected angle to be between -360 and 360 and not 0, found `-455`" }"# + r#"semantic: KclErrorDetails { source_ranges: [SourceRange([285, 321, 0])], message: "Expected angle to be between -360 and 360 and not 0, found `-455`" }"# ); } @@ -945,7 +945,7 @@ async fn kcl_test_revolve_bad_angle_high() { assert!(result.is_err()); assert_eq!( result.err().unwrap().to_string(), - r#"semantic: KclErrorDetails { source_ranges: [SourceRange([272, 307, 0])], message: "Expected angle to be between -360 and 360 and not 0, found `455`" }"# + r#"semantic: KclErrorDetails { source_ranges: [SourceRange([285, 320, 0])], message: "Expected angle to be between -360 and 360 and not 0, found `455`" }"# ); } @@ -1320,7 +1320,7 @@ secondSketch = startSketchOn(part001, '') assert!(result.is_err()); assert_eq!( result.err().unwrap().to_string(), - r#"semantic: KclErrorDetails { source_ranges: [SourceRange([283, 285, 0])], message: "Argument at index 1 was supposed to be type Option but found string (text)" }"# + r#"semantic: KclErrorDetails { source_ranges: [SourceRange([294, 296, 0])], message: "Argument at index 1 was supposed to be type Option but found string (text)" }"# ); } @@ -1351,7 +1351,7 @@ extrusion = startSketchOn('XY') assert!(result.is_err()); assert_eq!( result.err().unwrap().to_string(), - r#"semantic: KclErrorDetails { source_ranges: [SourceRange([68, 334, 0]), SourceRange([428, 461, 0])], message: "Expected 2 arguments, got 3" }"# + r#"semantic: KclErrorDetails { source_ranges: [SourceRange([68, 336, 0]), SourceRange([430, 463, 0])], message: "Expected 2 arguments, got 3" }"# ); } @@ -1377,7 +1377,7 @@ profile002 = plane001 sketch001 = [profile001, profile002] -extrude(10, sketch001) + extrude(sketch001, length = 10) "#; let result = execute_and_snapshot(code, UnitLength::Mm, None).await.unwrap(); @@ -1647,7 +1647,7 @@ part001 = cube([0,0], 20) assert!(result.is_err()); assert_eq!( result.err().unwrap().to_string(), - r#"type: KclErrorDetails { source_ranges: [SourceRange([259, 345, 0])], message: "You can only tag one edge at a time with a tagged chamfer. Either delete the tag for the chamfer fn if you don't need it OR separate into individual chamfer functions for each tag." }"# + r#"type: KclErrorDetails { source_ranges: [SourceRange([274, 360, 0])], message: "You can only tag one edge at a time with a tagged chamfer. Either delete the tag for the chamfer fn if you don't need it OR separate into individual chamfer functions for each tag." }"# ); }