KCL: Convert bezierCurve to use keyword args (#6381)

This commit is contained in:
Adam Chalmers
2025-04-20 20:10:27 -05:00
committed by GitHub
parent 0a35722595
commit 790613e708
13 changed files with 5540 additions and 845 deletions

View File

@ -10,8 +10,10 @@ Draw a smooth, continuous, curved line segment from the current origin to the de
```js ```js
bezierCurve( bezierCurve(
data: BezierData,
sketch: Sketch, sketch: Sketch,
control1: [number],
control2: [number],
end: [number],
tag?: TagDeclarator, tag?: TagDeclarator,
): Sketch ): Sketch
``` ```
@ -21,9 +23,11 @@ bezierCurve(
| Name | Type | Description | Required | | Name | Type | Description | Required |
|----------|------|-------------|----------| |----------|------|-------------|----------|
| `data` | [`BezierData`](/docs/kcl/types/BezierData) | Data to draw a bezier curve. | Yes | | `sketch` | [`Sketch`](/docs/kcl/types/Sketch) | Which sketch should this path be added to? | Yes |
| `sketch` | [`Sketch`](/docs/kcl/types/Sketch) | | Yes | | `control1` | [`[number]`](/docs/kcl/types/number) | First control point for the cubic | Yes |
| [`tag`](/docs/kcl/types/tag) | [`TagDeclarator`](/docs/kcl/types#tag-declaration) | | No | | `control2` | [`[number]`](/docs/kcl/types/number) | Second control point for the cubic | Yes |
| `end` | [`[number]`](/docs/kcl/types/number) | How far away (along the X and Y axes) should this line go? | Yes |
| [`tag`](/docs/kcl/types/tag) | [`TagDeclarator`](/docs/kcl/types#tag-declaration) | Create a new tag which refers to this line | No |
### Returns ### Returns
@ -36,11 +40,7 @@ bezierCurve(
exampleSketch = startSketchOn(XZ) exampleSketch = startSketchOn(XZ)
|> startProfileAt([0, 0], %) |> startProfileAt([0, 0], %)
|> line(end = [0, 10]) |> line(end = [0, 10])
|> bezierCurve({ |> bezierCurve(control1 = [5, 0], control2 = [5, 10], end = [10, 10])
to = [10, 10],
control1 = [5, 0],
control2 = [5, 10]
}, %)
|> line(endAbsolute = [10, 0]) |> line(endAbsolute = [10, 0])
|> close() |> close()

View File

@ -45,11 +45,7 @@ example = startSketchOn(XZ)
|> arc(angleStart = 120, angleEnd = 0, radius = 5) |> arc(angleStart = 120, angleEnd = 0, radius = 5)
|> line(end = [5, 0]) |> line(end = [5, 0])
|> line(end = [0, 10]) |> line(end = [0, 10])
|> bezierCurve({ |> bezierCurve(control1 = [-10, 0], control2 = [2, 10], end = [-5, 10])
control1 = [-10, 0],
control2 = [2, 10],
to = [-5, 10]
}, %)
|> line(end = [-5, -2]) |> line(end = [-5, -2])
|> close() |> close()
|> extrude(length = 10) |> extrude(length = 10)
@ -63,11 +59,7 @@ exampleSketch = startSketchOn(XZ)
|> arc(angleStart = 120, angleEnd = -60, radius = 5) |> arc(angleStart = 120, angleEnd = -60, radius = 5)
|> line(end = [10, 0]) |> line(end = [10, 0])
|> line(end = [5, 0]) |> line(end = [5, 0])
|> bezierCurve({ |> bezierCurve(control1 = [-3, 0], control2 = [2, 10], end = [-5, 10])
control1 = [-3, 0],
control2 = [2, 10],
to = [-5, 10]
}, %)
|> line(end = [-4, 10]) |> line(end = [-4, 10])
|> line(end = [-5, -2]) |> line(end = [-5, -2])
|> close() |> close()
@ -83,11 +75,7 @@ exampleSketch = startSketchOn(XZ)
|> arc(angleStart = 120, angleEnd = -60, radius = 5) |> arc(angleStart = 120, angleEnd = -60, radius = 5)
|> line(end = [10, 0]) |> line(end = [10, 0])
|> line(end = [5, 0]) |> line(end = [5, 0])
|> bezierCurve({ |> bezierCurve(control1 = [-3, 0], control2 = [2, 10], end = [-5, 10])
control1 = [-3, 0],
control2 = [2, 10],
to = [-5, 10]
}, %)
|> line(end = [-4, 10]) |> line(end = [-4, 10])
|> line(end = [-5, -2]) |> line(end = [-5, -2])
|> close() |> close()
@ -103,11 +91,7 @@ exampleSketch = startSketchOn(XZ)
|> arc(angleStart = 120, angleEnd = -60, radius = 5) |> arc(angleStart = 120, angleEnd = -60, radius = 5)
|> line(end = [10, 0]) |> line(end = [10, 0])
|> line(end = [5, 0]) |> line(end = [5, 0])
|> bezierCurve({ |> bezierCurve(control1 = [-3, 0], control2 = [2, 10], end = [-5, 10])
control1 = [-3, 0],
control2 = [2, 10],
to = [-5, 10]
}, %)
|> line(end = [-4, 10]) |> line(end = [-4, 10])
|> line(end = [-5, -2]) |> line(end = [-5, -2])
|> close() |> close()

File diff suppressed because it is too large Load Diff

View File

@ -46,11 +46,7 @@ lugHoles = startSketchOn(lugBase, face = END)
wheelCenterInner = startSketchOn(XY) wheelCenterInner = startSketchOn(XY)
|> startProfileAt([(lugSpacing - 1.5) / 2, 0], %) |> startProfileAt([(lugSpacing - 1.5) / 2, 0], %)
|> yLine(length = -wheelWidth / 10 - (wheelWidth / 20)) |> yLine(length = -wheelWidth / 10 - (wheelWidth / 20))
|> bezierCurve({ |> bezierCurve(control1 = [-0.3, 0], control2 = [0, 0.3], end = [-0.4, 0.3])
to = [-0.4, 0.3],
control1 = [-0.3, 0],
control2 = [0, 0.3]
}, %)
|> yLine(endAbsolute = 0) |> yLine(endAbsolute = 0)
|> line(endAbsolute = [profileStartX(%), profileStartY(%)]) |> line(endAbsolute = [profileStartX(%), profileStartY(%)])
|> close() |> close()
@ -60,11 +56,7 @@ wheelCenterInner = startSketchOn(XY)
wheelCenterOuter = startSketchOn(XY) wheelCenterOuter = startSketchOn(XY)
|> startProfileAt([(lugSpacing + 1.5) / 2, 0], %) |> startProfileAt([(lugSpacing + 1.5) / 2, 0], %)
|> yLine(length = -wheelWidth / 10 - (wheelWidth / 20)) |> yLine(length = -wheelWidth / 10 - (wheelWidth / 20))
|> bezierCurve({ |> bezierCurve(control1 = [0.3, 0], control2 = [0.2, -0.3], end = [0.4, -0.1])
to = [0.4, -0.1],
control1 = [0.3, 0],
control2 = [0.2, -0.3]
}, %)
|> yLine(endAbsolute = -wheelWidth / 20) |> yLine(endAbsolute = -wheelWidth / 20)
|> line(endAbsolute = [profileStartX(%), profileStartY(%)]) |> line(endAbsolute = [profileStartX(%), profileStartY(%)])
|> close() |> close()
@ -84,11 +76,7 @@ fn spoke(spokeGap, spokeAngle, spokeThickness) {
// Spoke cross sections // Spoke cross sections
spokeProfile = startSketchOn(plane001) spokeProfile = startSketchOn(plane001)
|> startProfileAt([(lugSpacing + 2) / 2, -0.7], %) |> startProfileAt([(lugSpacing + 2) / 2, -0.7], %)
|> bezierCurve({ |> bezierCurve(
to = [
(wheelDiameter - lugSpacing - 2.9) / 2,
offset
],
control1 = [ control1 = [
(wheelDiameter - lugSpacing - 2.9) / 3.5, (wheelDiameter - lugSpacing - 2.9) / 3.5,
offset / 7 offset / 7
@ -96,14 +84,14 @@ fn spoke(spokeGap, spokeAngle, spokeThickness) {
control2 = [ control2 = [
(wheelDiameter - lugSpacing - 2.9) / 4, (wheelDiameter - lugSpacing - 2.9) / 4,
offset / 1.5 offset / 1.5
]
}, %)
|> yLine(length = -wheelWidth / 15)
|> bezierCurve({
to = [
-(wheelDiameter - lugSpacing - 2.9) / 2,
-offset
], ],
end = [
(wheelDiameter - lugSpacing - 2.9) / 2,
offset
],
)
|> yLine(length = -wheelWidth / 15)
|> bezierCurve(
control1 = [ control1 = [
-(wheelDiameter - lugSpacing - 2.9) / 5, -(wheelDiameter - lugSpacing - 2.9) / 5,
-offset / 7 -offset / 7
@ -111,8 +99,12 @@ fn spoke(spokeGap, spokeAngle, spokeThickness) {
control2 = [ control2 = [
-(wheelDiameter - lugSpacing - 2.9) / 5, -(wheelDiameter - lugSpacing - 2.9) / 5,
-offset / 1.5 -offset / 1.5
] ],
}, %) end = [
-(wheelDiameter - lugSpacing - 2.9) / 2,
-offset
],
)
|> line(endAbsolute = [profileStartX(%), profileStartY(%)]) |> line(endAbsolute = [profileStartX(%), profileStartY(%)])
|> close() |> close()

View File

@ -149,11 +149,7 @@ sketch011 = startSketchOn(XZ)
|> xLine(length = 0.3) |> xLine(length = 0.3)
|> yLine(length = 0.4) |> yLine(length = 0.4)
|> line(end = [-0.02, 0.02]) |> line(end = [-0.02, 0.02])
|> bezierCurve({ |> bezierCurve(control1 = [-0.3, 0], control2 = [carafeDiameter / 10, 1], end = [-carafeDiameter / 2 - 0.1, 1])
to = [-carafeDiameter / 2 - 0.1, 1],
control1 = [-0.3, 0],
control2 = [carafeDiameter / 10, 1]
}, %)
|> line(endAbsolute = [profileStartX(%), profileStartY(%)]) |> line(endAbsolute = [profileStartX(%), profileStartY(%)])
|> close() |> close()
|> revolve(axis = Y) |> revolve(axis = Y)

View File

@ -3,108 +3,108 @@ const svg = startSketchOn(XY)
|> line(endAbsolute = [22.687663, -2.7664351]) // MoveRelative |> line(endAbsolute = [22.687663, -2.7664351]) // MoveRelative
|> line(endAbsolute = [15.687664000000002, -5.7664351]) // MoveRelative |> line(endAbsolute = [15.687664000000002, -5.7664351]) // MoveRelative
|> bezierCurve({ control1: [9.6876636, -13.766435], control2: [12.350729000000001, -9.156355099999999], to: [12.350729000000001, -9.156355099999999]}, %) // CubicBezierRelative |> bezierCurve(control1 = [9.6876636, -13.766435], control2 = [12.350729000000001, -9.156355099999999], end = [12.350729000000001, -9.156355099999999]) // CubicBezierRelative
|> bezierCurve({ control1: [3.6876636000000005, -32.766435], control2: [6.962245000000001, -20.186315], to: [4.8344949, -25.885455]}, %) // CubicBezierRelative |> bezierCurve(control1 = [3.6876636000000005, -32.766435], control2 = [6.962245000000001, -20.186315], end = [4.8344949, -25.885455]) // CubicBezierRelative
|> bezierCurve({ control1: [5.0392261000000005, -58.571125], control2: [2.9675173000000004, -41.612785], to: [3.0190312000000006, -49.894795]}, %) // CubicBezierRelative |> bezierCurve(control1 = [5.0392261000000005, -58.571125], control2 = [2.9675173000000004, -41.612785], end = [3.0190312000000006, -49.894795]) // CubicBezierRelative
|> bezierCurve({ control1: [10.687664000000002, -73.766435], control2: [6.693877800000001, -63.826655], to: [8.2887432, -68.804835]}, %) // CubicBezierRelative |> bezierCurve(control1 = [10.687664000000002, -73.766435], control2 = [6.693877800000001, -63.826655], end = [8.2887432, -68.804835]) // CubicBezierRelative
|> bezierCurve({ control1: [20.375163, -80.578935], control2: [16.045534000000004, -78.630635], to: [16.045534000000004, -78.630635]}, %) // CubicBezierRelative |> bezierCurve(control1 = [20.375163, -80.578935], control2 = [16.045534000000004, -78.630635], end = [16.045534000000004, -78.630635]) // CubicBezierRelative
|> bezierCurve({ control1: [30.062663, -82.266435], control2: [24.812782, -81.936245], to: [24.812782, -81.936245]}, %) // CubicBezierRelative |> bezierCurve(control1 = [30.062663, -82.266435], control2 = [24.812782, -81.936245], end = [24.812782, -81.936245]) // CubicBezierRelative
|> bezierCurve({ control1: [41.125163, -79.516435], control2: [35.794902, -82.039475], to: [35.794902, -82.039475]}, %) // CubicBezierRelative |> bezierCurve(control1 = [41.125163, -79.516435], control2 = [35.794902, -82.039475], end = [35.794902, -82.039475]) // CubicBezierRelative
|> bezierCurve({ control1: [49.687663, -72.766435], control2: [45.867323, -76.907555], to: [45.867323, -76.907555]}, %) // CubicBezierRelative |> bezierCurve(control1 = [49.687663, -72.766435], control2 = [45.867323, -76.907555], end = [45.867323, -76.907555]) // CubicBezierRelative
|> line(endAbsolute = [50.687663, -69.766435]) // LineRelative |> line(endAbsolute = [50.687663, -69.766435]) // LineRelative
|> line(endAbsolute = [50.687663, -62.766435]) // VerticalLineHorizonal |> line(endAbsolute = [50.687663, -62.766435]) // VerticalLineHorizonal
|> line(endAbsolute = [48.687663, -57.891435]) // LineRelative |> line(endAbsolute = [48.687663, -57.891435]) // LineRelative
|> bezierCurve({ control1: [46.351725, -31.692225], control2: [46.191183, -48.997725], to: [46.295503000000004, -40.884555000000006]}, %) // CubicBezierRelative |> bezierCurve(control1 = [46.351725, -31.692225], control2 = [46.191183, -48.997725], end = [46.295503000000004, -40.884555000000006]) // CubicBezierRelative
|> bezierCurve({ control1: [47.7736, -20.934404999999998], control2: [46.687663, -25.766435], to: [46.687663, -25.766435]}, %) // CubicBezierRelative |> bezierCurve(control1 = [47.7736, -20.934404999999998], control2 = [46.687663, -25.766435], end = [46.687663, -25.766435]) // CubicBezierRelative
|> line(endAbsolute = [48.687663, -16.766434999999998]) // LineRelative |> line(endAbsolute = [48.687663, -16.766434999999998]) // LineRelative
|> line(endAbsolute = [47.687663, -9.766435099999999]) // LineRelative |> line(endAbsolute = [47.687663, -9.766435099999999]) // LineRelative
|> bezierCurve({ control1: [40.687663, -3.766435099999999], control2: [44.488820000000004, -6.310115099999999], to: [44.488820000000004, -6.310115099999999]}, %) // CubicBezierRelative |> bezierCurve(control1 = [40.687663, -3.766435099999999], control2 = [44.488820000000004, -6.310115099999999], end = [44.488820000000004, -6.310115099999999]) // CubicBezierRelative
|> bezierCurve({ control1: [22.687663, -2.766435099999999], control2: [34.632213, -2.2525750999999987], to: [28.903189, -2.550245099999999]}, %) // CubicBezierRelative |> bezierCurve(control1 = [22.687663, -2.766435099999999], control2 = [34.632213, -2.2525750999999987], end = [28.903189, -2.550245099999999]) // CubicBezierRelative
// StopRelative // StopRelative
|> line(endAbsolute = [116.68767, -9.766435099999999]) // MoveRelative |> line(endAbsolute = [116.68767, -9.766435099999999]) // MoveRelative
|> bezierCurve({ control1: [108.68767, -15.766434999999998], control2: [112.22719, -12.236704999999999], to: [112.22719, -12.236704999999999]}, %) // CubicBezierRelative |> bezierCurve(control1 = [108.68767, -15.766434999999998], control2 = [112.22719, -12.236704999999999], end = [112.22719, -12.236704999999999]) // CubicBezierRelative
|> bezierCurve({ control1: [102.37517, -28.953934999999998], control2: [105.79825, -20.100575], to: [103.93048, -23.991764999999997]}, %) // CubicBezierRelative |> bezierCurve(control1 = [102.37517, -28.953934999999998], control2 = [105.79825, -20.100575], end = [103.93048, -23.991764999999997]) // CubicBezierRelative
|> bezierCurve({ control1: [101.68767, -47.766435], control2: [101.45837999999999, -35.371444999999994], to: [101.28287, -41.289805]}, %) // CubicBezierRelative |> bezierCurve(control1 = [101.68767, -47.766435], control2 = [101.45837999999999, -35.371444999999994], end = [101.28287, -41.289805]) // CubicBezierRelative
|> bezierCurve({ control1: [110.31267, -61.203935], control2: [103.94304, -53.097335], to: [106.65406999999999, -56.725305]}, %) // CubicBezierRelative |> bezierCurve(control1 = [110.31267, -61.203935], control2 = [103.94304, -53.097335], end = [106.65406999999999, -56.725305]) // CubicBezierRelative
|> bezierCurve({ control1: [116.68767, -66.766435], control2: [113.42043, -64.74899500000001], to: [113.42043, -64.74899500000001]}, %) // CubicBezierRelative |> bezierCurve(control1 = [116.68767, -66.766435], control2 = [113.42043, -64.74899500000001], end = [113.42043, -64.74899500000001]) // CubicBezierRelative
|> bezierCurve({ control1: [134.68767, -64.766435], control2: [123.4012, -67.124495], to: [128.03363, -66.429955]}, %) // CubicBezierRelative |> bezierCurve(control1 = [134.68767, -64.766435], control2 = [123.4012, -67.124495], end = [128.03363, -66.429955]) // CubicBezierRelative
|> bezierCurve({ control1: [143.68767, -60.766435], control2: [139.37985, -63.042205], to: [139.37985, -63.042205]}, %) // CubicBezierRelative |> bezierCurve(control1 = [143.68767, -60.766435], control2 = [139.37985, -63.042205], end = [139.37985, -63.042205]) // CubicBezierRelative
|> line(endAbsolute = [148.68767, -55.766435]) // LineRelative |> line(endAbsolute = [148.68767, -55.766435]) // LineRelative
|> line(endAbsolute = [149.68767, -54.766435]) // LineRelative |> line(endAbsolute = [149.68767, -54.766435]) // LineRelative
|> bezierCurve({ control1: [149.75017, -46.078935], control2: [149.71427, -51.870655], to: [149.73387, -48.974805]}, %) // CubicBezierRelative |> bezierCurve(control1 = [149.75017, -46.078935], control2 = [149.71427, -51.870655], end = [149.73387, -48.974805]) // CubicBezierRelative
|> bezierCurve({ control1: [150.68767, -36.766435], control2: [149.97673, -41.121905], to: [149.97673, -41.121905]}, %) // CubicBezierRelative |> bezierCurve(control1 = [150.68767, -36.766435], control2 = [149.97673, -41.121905], end = [149.97673, -41.121905]) // CubicBezierRelative
|> bezierCurve({ control1: [158.68767, -30.766435], control2: [154.62517, -32.891435], to: [154.62517, -32.891435]}, %) // CubicBezierRelative |> bezierCurve(control1 = [158.68767, -30.766435], control2 = [154.62517, -32.891435], end = [154.62517, -32.891435]) // CubicBezierRelative
|> line(endAbsolute = [160.68767, -26.766435]) // LineRelative |> line(endAbsolute = [160.68767, -26.766435]) // LineRelative
|> line(endAbsolute = [160.68767, -20.766435]) // VerticalLineHorizonal |> line(endAbsolute = [160.68767, -20.766435]) // VerticalLineHorizonal
|> bezierCurve({ control1: [149.68767, -9.8289351], control2: [157.40521999999999, -16.321455], to: [154.13992, -13.098555000000001]}, %) // CubicBezierRelative |> bezierCurve(control1 = [149.68767, -9.8289351], control2 = [157.40521999999999, -16.321455], end = [154.13992, -13.098555000000001]) // CubicBezierRelative
|> bezierCurve({ control1: [145.68767, -7.766435100000001], control2: [148.36767, -9.148315100000001], to: [147.04767, -8.4676851]}, %) // CubicBezierRelative |> bezierCurve(control1 = [145.68767, -7.766435100000001], control2 = [148.36767, -9.148315100000001], end = [147.04767, -8.4676851]) // CubicBezierRelative
|> bezierCurve({ control1: [116.68767, -9.7664351], control2: [135.27527, -6.278955100000001], to: [126.6914, -6.2357151]}, %) // CubicBezierRelative |> bezierCurve(control1 = [116.68767, -9.7664351], control2 = [135.27527, -6.278955100000001], end = [126.6914, -6.2357151]) // CubicBezierRelative
// StopRelative // StopRelative
|> line(endAbsolute = [60.687663, -9.7664351]) // MoveRelative |> line(endAbsolute = [60.687663, -9.7664351]) // MoveRelative
|> line(endAbsolute = [54.687663, -13.766435000000001]) // MoveRelative |> line(endAbsolute = [54.687663, -13.766435000000001]) // MoveRelative
|> bezierCurve({ control1: [48.937663, -25.516435], control2: [50.481933, -19.450155000000002], to: [50.481933, -19.450155000000002]}, %) // CubicBezierRelative |> bezierCurve(control1 = [48.937663, -25.516435], control2 = [50.481933, -19.450155000000002], end = [50.481933, -19.450155000000002]) // CubicBezierRelative
|> bezierCurve({ control1: [47.687663, -41.766435], control2: [47.773086, -31.339325000000002], to: [47.261382, -35.869545]}, %) // CubicBezierRelative |> bezierCurve(control1 = [47.687663, -41.766435], control2 = [47.773086, -31.339325000000002], end = [47.261382, -35.869545]) // CubicBezierRelative
|> bezierCurve({ control1: [50.687663, -56.766435], control2: [48.8286, -49.471785000000004], to: [48.8286, -49.471785000000004]}, %) // CubicBezierRelative |> bezierCurve(control1 = [50.687663, -56.766435], control2 = [48.8286, -49.471785000000004], end = [48.8286, -49.471785000000004]) // CubicBezierRelative
|> line(endAbsolute = [54.687663, -62.766435]) // LineRelative |> line(endAbsolute = [54.687663, -62.766435]) // LineRelative
|> line(endAbsolute = [60.687663, -66.766435]) // LineRelative |> line(endAbsolute = [60.687663, -66.766435]) // LineRelative
|> bezierCurve({ control1: [69.562663, -67.203935], control2: [64.985029, -67.361225], to: [64.985029, -67.361225]}, %) // CubicBezierRelative |> bezierCurve(control1 = [69.562663, -67.203935], control2 = [64.985029, -67.361225], end = [64.985029, -67.361225]) // CubicBezierRelative
|> bezierCurve({ control1: [74.17985, -67.199935], control2: [71.84817100000001, -67.201935], to: [71.84817100000001, -67.201935]}, %) // CubicBezierRelative |> bezierCurve(control1 = [74.17985, -67.199935], control2 = [71.84817100000001, -67.201935], end = [71.84817100000001, -67.201935]) // CubicBezierRelative
|> bezierCurve({ control1: [86.687663, -63.766335], control2: [78.823333, -66.75328499999999], to: [82.418032, -65.599655]}, %) // CubicBezierRelative |> bezierCurve(control1 = [86.687663, -63.766335], control2 = [78.823333, -66.75328499999999], end = [82.418032, -65.599655]) // CubicBezierRelative
|> line(endAbsolute = [86.687663, -61.766335]) // VerticalLineHorizonal |> line(endAbsolute = [86.687663, -61.766335]) // VerticalLineHorizonal
|> line(endAbsolute = [90.687663, -60.766335]) // LineRelative |> line(endAbsolute = [90.687663, -60.766335]) // LineRelative
|> line(endAbsolute = [95.687663, -56.766335]) // LineRelative |> line(endAbsolute = [95.687663, -56.766335]) // LineRelative
|> line(endAbsolute = [98.687663, -49.766335]) // LineRelative |> line(endAbsolute = [98.687663, -49.766335]) // LineRelative
|> bezierCurve({ control1: [97.562663, -37.578835], control2: [98.934927, -43.021825], to: [98.934927, -43.021825]}, %) // CubicBezierRelative |> bezierCurve(control1 = [97.562663, -37.578835], control2 = [98.934927, -43.021825], end = [98.934927, -43.021825]) // CubicBezierRelative
|> bezierCurve({ control1: [95.687663, -32.766335], control2: [96.943913, -35.990714999999994], to: [96.325163, -34.402584999999995]}, %) // CubicBezierRelative |> bezierCurve(control1 = [95.687663, -32.766335], control2 = [96.943913, -35.990714999999994], end = [96.325163, -34.402584999999995]) // CubicBezierRelative
|> bezierCurve({ control1: [86.687663, -27.766334999999998], control2: [90.389309, -28.854045], to: [90.389309, -28.854045]}, %) // CubicBezierRelative |> bezierCurve(control1 = [86.687663, -27.766334999999998], control2 = [90.389309, -28.854045], end = [90.389309, -28.854045]) // CubicBezierRelative
|> line(endAbsolute = [84.687663, -23.766334999999998]) // LineRelative |> line(endAbsolute = [84.687663, -23.766334999999998]) // LineRelative
|> line(endAbsolute = [82.687663, -22.766334999999998]) // LineRelative |> line(endAbsolute = [82.687663, -22.766334999999998]) // LineRelative
|> line(endAbsolute = [79.687663, -17.766334999999998]) // LineRelative |> line(endAbsolute = [79.687663, -17.766334999999998]) // LineRelative
|> line(endAbsolute = [77.687663, -17.766334999999998]) // HorizontalLineRelative |> line(endAbsolute = [77.687663, -17.766334999999998]) // HorizontalLineRelative
|> line(endAbsolute = [75.687663, -13.766334999999998]) // LineRelative |> line(endAbsolute = [75.687663, -13.766334999999998]) // LineRelative
|> bezierCurve({ control1: [67.687663, -9.766335099999997], control2: [72.005138, -11.383034999999998], to: [72.005138, -11.383034999999998]}, %) // CubicBezierRelative |> bezierCurve(control1 = [67.687663, -9.766335099999997], control2 = [72.005138, -11.383034999999998], end = [72.005138, -11.383034999999998]) // CubicBezierRelative
|> line(endAbsolute = [60.687663, -9.766335099999997]) // HorizontalLineRelative |> line(endAbsolute = [60.687663, -9.766335099999997]) // HorizontalLineRelative
// StopRelative // StopRelative
|> line(endAbsolute = [295.68767, -33.766435]) // MoveAbsolute |> line(endAbsolute = [295.68767, -33.766435]) // MoveAbsolute
|> bezierCurve({ control1: [286.31267, -36.578935], control2: [292.56461, -34.710375], to: [289.43947000000003, -35.647445000000005]}, %) // CubicBezierRelative |> bezierCurve(control1 = [286.31267, -36.578935], control2 = [292.56461, -34.710375], end = [289.43947000000003, -35.647445000000005]) // CubicBezierRelative
|> bezierCurve({ control1: [242.00408000000002, -50.172685], control2: [271.51088000000004, -41.004795], to: [256.74729, -45.555595000000004]}, %) // CubicBezierRelative |> bezierCurve(control1 = [242.00408000000002, -50.172685], control2 = [271.51088000000004, -41.004795], end = [256.74729, -45.555595000000004]) // CubicBezierRelative
|> bezierCurve({ control1: [234.31267000000003, -52.578935], control2: [239.46591, -50.966755], to: [236.92775, -51.760815]}, %) // CubicBezierRelative |> bezierCurve(control1 = [234.31267000000003, -52.578935], control2 = [239.46591, -50.966755], end = [236.92775, -51.760815]) // CubicBezierRelative
|> bezierCurve({ control1: [227.28923000000003, -54.785975], control2: [231.99494, -53.307255], to: [229.67720000000003, -54.035585000000005]}, %) // CubicBezierRelative |> bezierCurve(control1 = [227.28923000000003, -54.785975], control2 = [231.99494, -53.307255], end = [229.67720000000003, -54.035585000000005]) // CubicBezierRelative
|> bezierCurve({ control1: [208.68767000000003, -59.766435], control2: [221.12295000000003, -56.635855], to: [214.94597000000005, -58.261215]}, %) // CubicBezierRelative |> bezierCurve(control1 = [208.68767000000003, -59.766435], control2 = [221.12295000000003, -56.635855], end = [214.94597000000005, -58.261215]) // CubicBezierRelative
|> line(endAbsolute = [208.68767000000003, -57.766435]) // VerticalLineHorizonal |> line(endAbsolute = [208.68767000000003, -57.766435]) // VerticalLineHorizonal
|> line(endAbsolute = [212.68767000000003, -55.766435]) // LineRelative |> line(endAbsolute = [212.68767000000003, -55.766435]) // LineRelative
|> bezierCurve({ control1: [217.68767000000003, -48.766435], control2: [215.57281000000003, -52.830805], to: [215.57281000000003, -52.830805]}, %) // CubicBezierRelative |> bezierCurve(control1 = [217.68767000000003, -48.766435], control2 = [215.57281000000003, -52.830805], end = [215.57281000000003, -52.830805]) // CubicBezierRelative
|> bezierCurve({ control1: [218.68767000000003, -37.766435], control2: [218.84802000000002, -43.253935], to: [218.84802000000002, -43.253935]}, %) // CubicBezierRelative |> bezierCurve(control1 = [218.68767000000003, -37.766435], control2 = [218.84802000000002, -43.253935], end = [218.84802000000002, -43.253935]) // CubicBezierRelative
|> line(endAbsolute = [215.68767000000003, -31.766435]) // LineRelative |> line(endAbsolute = [215.68767000000003, -31.766435]) // LineRelative
|> bezierCurve({ control1: [208.68767000000003, -26.766435], control2: [212.58234000000002, -28.940575000000003], to: [212.58234000000002, -28.940575000000003]}, %) // CubicBezierRelative |> bezierCurve(control1 = [208.68767000000003, -26.766435], control2 = [212.58234000000002, -28.940575000000003], end = [212.58234000000002, -28.940575000000003]) // CubicBezierRelative
|> bezierCurve({ control1: [192.68767000000003, -22.766435], control2: [203.18777000000003, -24.627585], to: [198.58520000000001, -23.608945000000002]}, %) // CubicBezierRelative |> bezierCurve(control1 = [192.68767000000003, -22.766435], control2 = [203.18777000000003, -24.627585], end = [198.58520000000001, -23.608945000000002]) // CubicBezierRelative
|> bezierCurve({ control1: [174.68767000000003, -24.766435], control2: [186.30665000000002, -22.492965], to: [180.86041000000003, -23.137525]}, %) // CubicBezierRelative |> bezierCurve(control1 = [174.68767000000003, -24.766435], control2 = [186.30665000000002, -22.492965], end = [180.86041000000003, -23.137525]) // CubicBezierRelative
|> bezierCurve({ control1: [170.12517000000003, -25.953935], control2: [173.18205000000003, -25.158315], to: [171.67642000000004, -25.550185000000003]}, %) // CubicBezierRelative |> bezierCurve(control1 = [170.12517000000003, -25.953935], control2 = [173.18205000000003, -25.158315], end = [171.67642000000004, -25.550185000000003]) // CubicBezierRelative
|> bezierCurve({ control1: [161.43767000000003, -31.016435], control2: [165.49678000000003, -27.618325000000002], to: [165.49678000000003, -27.618325000000002]}, %) // CubicBezierRelative |> bezierCurve(control1 = [161.43767000000003, -31.016435], control2 = [165.49678000000003, -27.618325000000002], end = [165.49678000000003, -27.618325000000002]) // CubicBezierRelative
|> bezierCurve({ control1: [152.68767000000003, -41.766435], control2: [157.93412000000004, -34.519995], to: [155.07957000000002, -37.431115]}, %) // CubicBezierRelative |> bezierCurve(control1 = [152.68767000000003, -41.766435], control2 = [157.93412000000004, -34.519995], end = [155.07957000000002, -37.431115]) // CubicBezierRelative
|> bezierCurve({ control1: [152.68767000000003, -50.766435], control2: [151.93767000000003, -46.266435], to: [151.93767000000003, -46.266435]}, %) // CubicBezierRelative |> bezierCurve(control1 = [152.68767000000003, -50.766435], control2 = [151.93767000000003, -46.266435], end = [151.93767000000003, -46.266435]) // CubicBezierRelative
|> bezierCurve({ control1: [160.43767000000003, -61.578935], control2: [156.18761000000003, -57.582325], to: [156.18761000000003, -57.582325]}, %) // CubicBezierRelative |> bezierCurve(control1 = [160.43767000000003, -61.578935], control2 = [156.18761000000003, -57.582325], end = [156.18761000000003, -57.582325]) // CubicBezierRelative
|> bezierCurve({ control1: [164.68767000000003, -64.766435], control2: [162.54142000000002, -63.156755000000004], to: [162.54142000000002, -63.156755000000004]}, %) // CubicBezierRelative |> bezierCurve(control1 = [164.68767000000003, -64.766435], control2 = [162.54142000000002, -63.156755000000004], end = [162.54142000000002, -63.156755000000004]) // CubicBezierRelative
|> bezierCurve({ control1: [180.68767000000003, -67.766435], control2: [172.62751000000003, -66.921865], to: [172.62751000000003, -66.921865]}, %) // CubicBezierRelative |> bezierCurve(control1 = [180.68767000000003, -67.766435], control2 = [172.62751000000003, -66.921865], end = [172.62751000000003, -66.921865]) // CubicBezierRelative
|> bezierCurve({ control1: [158.81267000000003, -75.266435], control2: [173.47790000000003, -70.856345], to: [166.33463000000003, -73.047575]}, %) // CubicBezierRelative |> bezierCurve(control1 = [158.81267000000003, -75.266435], control2 = [173.47790000000003, -70.856345], end = [166.33463000000003, -73.047575]) // CubicBezierRelative
|> bezierCurve({ control1: [138.52752000000004, -81.543785], control2: [148.62236000000001, -78.25548500000001], to: [148.62236000000001, -78.25548500000001]}, %) // CubicBezierRelative |> bezierCurve(control1 = [138.52752000000004, -81.543785], control2 = [148.62236000000001, -78.25548500000001], end = [148.62236000000001, -78.25548500000001]) // CubicBezierRelative
|> bezierCurve({ control1: [130.12517000000003, -82.828935], control2: [134.68767000000003, -82.766435], to: [134.68767000000003, -82.766435]}, %) // CubicBezierRelative |> bezierCurve(control1 = [130.12517000000003, -82.828935], control2 = [134.68767000000003, -82.766435], end = [134.68767000000003, -82.766435]) // CubicBezierRelative
|> bezierCurve({ control1: [125.68767000000003, -81.766435], control2: [128.66080000000002, -82.478315], to: [127.19642000000003, -82.127685]}, %) // CubicBezierRelative |> bezierCurve(control1 = [125.68767000000003, -81.766435], control2 = [128.66080000000002, -82.478315], end = [127.19642000000003, -82.127685]) // CubicBezierRelative
|> bezierCurve({ control1: [117.68767000000003, -75.766435], control2: [122.99559000000002, -79.800785], to: [120.32975000000002, -77.798805]}, %) // CubicBezierRelative |> bezierCurve(control1 = [117.68767000000003, -75.766435], control2 = [122.99559000000002, -79.800785], end = [120.32975000000002, -77.798805]) // CubicBezierRelative
|> bezierCurve({ control1: [107.68767000000003, -72.766435], control2: [113.16586000000002, -73.682455], to: [113.16586000000002, -73.682455]}, %) // CubicBezierRelative |> bezierCurve(control1 = [107.68767000000003, -72.766435], control2 = [113.16586000000002, -73.682455], end = [113.16586000000002, -73.682455]) // CubicBezierRelative
|> bezierCurve({ control1: [84.93766300000003, -73.953935], control2: [99.87842800000003, -72.226315], to: [92.61523300000002, -72.36835500000001]}, %) // CubicBezierRelative |> bezierCurve(control1 = [84.93766300000003, -73.953935], control2 = [99.87842800000003, -72.226315], end = [92.61523300000002, -72.36835500000001]) // CubicBezierRelative
|> bezierCurve({ control1: [80.68766300000003, -75.766435], control2: [83.53516300000003, -74.552065], to: [82.13266300000002, -75.15018500000001]}, %) // CubicBezierRelative |> bezierCurve(control1 = [80.68766300000003, -75.766435], control2 = [83.53516300000003, -74.552065], end = [82.13266300000002, -75.15018500000001]) // CubicBezierRelative
|> line(endAbsolute = [75.68766300000003, -80.766435]) // LineRelative |> line(endAbsolute = [75.68766300000003, -80.766435]) // LineRelative
|> line(endAbsolute = [76.68766300000003, -84.766435]) // LineRelative |> line(endAbsolute = [76.68766300000003, -84.766435]) // LineRelative
|> line(endAbsolute = [81.68766300000003, -87.766435]) // LineRelative |> line(endAbsolute = [81.68766300000003, -87.766435]) // LineRelative
|> bezierCurve({ control1: [93.93766300000003, -87.891435], control2: [85.76704300000003, -87.950845], to: [89.85495700000003, -87.974265]}, %) // CubicBezierRelative |> bezierCurve(control1 = [93.93766300000003, -87.891435], control2 = [85.76704300000003, -87.950845], end = [89.85495700000003, -87.974265]) // CubicBezierRelative
|> bezierCurve({ control1: [105.68767000000003, -87.766435], control2: [97.85393000000003, -87.821635], to: [101.77078000000003, -87.772355]}, %) // CubicBezierRelative |> bezierCurve(control1 = [105.68767000000003, -87.766435], control2 = [97.85393000000003, -87.821635], end = [101.77078000000003, -87.772355]) // CubicBezierRelative
|> line(endAbsolute = [106.68767000000003, -88.766435]) // LineRelative |> line(endAbsolute = [106.68767000000003, -88.766435]) // LineRelative
|> line(endAbsolute = [99.68766300000003, -90.766435]) // LineRelative |> line(endAbsolute = [99.68766300000003, -90.766435]) // LineRelative
|> line(endAbsolute = [95.75016300000003, -93.266435]) // LineRelative |> line(endAbsolute = [95.75016300000003, -93.266435]) // LineRelative
|> bezierCurve({ control1: [83.68766300000003, -97.766435], control2: [91.68766300000003, -95.766435], to: [91.68766300000003, -95.766435]}, %) // CubicBezierRelative |> bezierCurve(control1 = [83.68766300000003, -97.766435], control2 = [91.68766300000003, -95.766435], end = [91.68766300000003, -95.766435]) // CubicBezierRelative
|> bezierCurve({ control1: [68.68766300000003, -102.76643], control2: [78.56377900000003, -99.248045], to: [73.64162800000003, -100.78485]}, %) // CubicBezierRelative |> bezierCurve(control1 = [68.68766300000003, -102.76643], control2 = [78.56377900000003, -99.248045], end = [73.64162800000003, -100.78485]) // CubicBezierRelative
|> bezierCurve({ control1: [52.68766300000003, -101.76643], control2: [63.09091200000003, -102.95723], to: [58.18407400000003, -102.86573]}, %) // CubicBezierRelative |> bezierCurve(control1 = [52.68766300000003, -101.76643], control2 = [63.09091200000003, -102.95723], end = [58.18407400000003, -102.86573]) // CubicBezierRelative
|> line(endAbsolute = [48.68766300000003, -106.76643]) // LineRelative |> line(endAbsolute = [48.68766300000003, -106.76643]) // LineRelative
|> line(endAbsolute = [48.68766300000003, -114.76643]) // VerticalLineHorizonal |> line(endAbsolute = [48.68766300000003, -114.76643]) // VerticalLineHorizonal
|> line(endAbsolute = [51.68766300000003, -121.76643]) // LineRelative |> line(endAbsolute = [51.68766300000003, -121.76643]) // LineRelative
@ -119,91 +119,91 @@ const svg = startSketchOn(XY)
|> line(endAbsolute = [85.68766300000003, -109.76643]) // LineRelative |> line(endAbsolute = [85.68766300000003, -109.76643]) // LineRelative
|> line(endAbsolute = [88.68766300000003, -106.76643]) // LineRelative |> line(endAbsolute = [88.68766300000003, -106.76643]) // LineRelative
|> line(endAbsolute = [88.68766300000003, -102.76643]) // VerticalLineHorizonal |> line(endAbsolute = [88.68766300000003, -102.76643]) // VerticalLineHorizonal
|> bezierCurve({ control1: [99.68766300000003, -101.76643], control2: [93.93766300000003, -102.01643], to: [93.93766300000003, -102.01643]}, %) // CubicBezierRelative |> bezierCurve(control1 = [99.68766300000003, -101.76643], control2 = [93.93766300000003, -102.01643], end = [93.93766300000003, -102.01643]) // CubicBezierRelative
|> line(endAbsolute = [103.68767000000003, -105.76643]) // LineRelative |> line(endAbsolute = [103.68767000000003, -105.76643]) // LineRelative
|> line(endAbsolute = [106.68767000000003, -106.76643]) // LineRelative |> line(endAbsolute = [106.68767000000003, -106.76643]) // LineRelative
|> bezierCurve({ control1: [107.68767000000003, -102.76643], control2: [107.18267000000003, -104.78643], to: [107.18267000000003, -104.78643]}, %) // CubicBezierRelative |> bezierCurve(control1 = [107.68767000000003, -102.76643], control2 = [107.18267000000003, -104.78643], end = [107.18267000000003, -104.78643]) // CubicBezierRelative
|> line(endAbsolute = [116.68767000000003, -102.76643]) // HorizontalLineRelative |> line(endAbsolute = [116.68767000000003, -102.76643]) // HorizontalLineRelative
|> line(endAbsolute = [113.68767000000003, -108.76643]) // LineRelative |> line(endAbsolute = [113.68767000000003, -108.76643]) // LineRelative
|> bezierCurve({ control1: [101.68767000000003, -114.76643], control2: [109.73020000000002, -110.84932], to: [105.72846000000003, -112.85018]}, %) // CubicBezierRelative |> bezierCurve(control1 = [101.68767000000003, -114.76643], control2 = [109.73020000000002, -110.84932], end = [105.72846000000003, -112.85018]) // CubicBezierRelative
|> line(endAbsolute = [97.68766300000003, -118.76643]) // LineRelative |> line(endAbsolute = [97.68766300000003, -118.76643]) // LineRelative
|> line(endAbsolute = [97.68766300000003, -125.76643]) // VerticalLineHorizonal |> line(endAbsolute = [97.68766300000003, -125.76643]) // VerticalLineHorizonal
|> line(endAbsolute = [101.68767000000003, -128.76643]) // LineRelative |> line(endAbsolute = [101.68767000000003, -128.76643]) // LineRelative
|> bezierCurve({ control1: [115.75017000000003, -126.57893000000001], control2: [106.58566000000002, -128.61801000000003], to: [110.98125000000003, -127.69757000000001]}, %) // CubicBezierRelative |> bezierCurve(control1 = [115.75017000000003, -126.57893000000001], control2 = [106.58566000000002, -128.61801000000003], end = [110.98125000000003, -127.69757000000001]) // CubicBezierRelative
|> bezierCurve({ control1: [124.93767000000003, -122.01643000000001], control2: [120.74370000000002, -124.95192000000002], to: [120.74370000000002, -124.95192000000002]}, %) // CubicBezierRelative |> bezierCurve(control1 = [124.93767000000003, -122.01643000000001], control2 = [120.74370000000002, -124.95192000000002], end = [120.74370000000002, -124.95192000000002]) // CubicBezierRelative
|> bezierCurve({ control1: [134.68767000000003, -111.76643000000001], control2: [128.66063000000003, -118.78987000000001], to: [131.76465000000002, -115.73339000000001]}, %) // CubicBezierRelative |> bezierCurve(control1 = [134.68767000000003, -111.76643000000001], control2 = [128.66063000000003, -118.78987000000001], end = [131.76465000000002, -115.73339000000001]) // CubicBezierRelative
|> bezierCurve({ control1: [136.68767000000003, -96.76643500000002], control2: [137.05397000000002, -104.69775000000001], to: [137.05397000000002, -104.69775000000001]}, %) // CubicBezierRelative |> bezierCurve(control1 = [136.68767000000003, -96.76643500000002], control2 = [137.05397000000002, -104.69775000000001], end = [137.05397000000002, -104.69775000000001]) // CubicBezierRelative
|> line(endAbsolute = [135.68767000000003, -95.76643500000002]) // LineRelative |> line(endAbsolute = [135.68767000000003, -95.76643500000002]) // LineRelative
|> line(endAbsolute = [144.68767000000003, -91.76643500000002]) // LineRelative |> line(endAbsolute = [144.68767000000003, -91.76643500000002]) // LineRelative
|> line(endAbsolute = [144.68767000000003, -89.76643500000002]) // VerticalLineHorizonal |> line(endAbsolute = [144.68767000000003, -89.76643500000002]) // VerticalLineHorizonal
|> bezierCurve({ control1: [149.18767000000003, -88.95393500000002], control2: [146.91517000000002, -89.36425500000001], to: [146.91517000000002, -89.36425500000001]}, %) // CubicBezierRelative |> bezierCurve(control1 = [149.18767000000003, -88.95393500000002], control2 = [146.91517000000002, -89.36425500000001], end = [146.91517000000002, -89.36425500000001]) // CubicBezierRelative
|> bezierCurve({ control1: [158.81267000000003, -86.20393500000002], control2: [154.52930000000003, -87.94347500000002], to: [154.52930000000003, -87.94347500000002]}, %) // CubicBezierRelative |> bezierCurve(control1 = [158.81267000000003, -86.20393500000002], control2 = [154.52930000000003, -87.94347500000002], end = [154.52930000000003, -87.94347500000002]) // CubicBezierRelative
|> bezierCurve({ control1: [170.68767000000003, -83.76643500000002], control2: [162.68767000000003, -84.76643500000002], to: [162.68767000000003, -84.76643500000002]}, %) // CubicBezierRelative |> bezierCurve(control1 = [170.68767000000003, -83.76643500000002], control2 = [162.68767000000003, -84.76643500000002], end = [162.68767000000003, -84.76643500000002]) // CubicBezierRelative
|> line(endAbsolute = [169.68767000000003, -87.76643500000002]) // LineRelative |> line(endAbsolute = [169.68767000000003, -87.76643500000002]) // LineRelative
|> bezierCurve({ control1: [173.81267000000003, -124.20393000000001], control2: [169.31325000000004, -100.37193000000002], to: [170.34211000000002, -112.05696000000002]}, %) // CubicBezierRelative |> bezierCurve(control1 = [173.81267000000003, -124.20393000000001], control2 = [169.31325000000004, -100.37193000000002], end = [170.34211000000002, -112.05696000000002]) // CubicBezierRelative
|> bezierCurve({ control1: [175.68767000000003, -129.76643], control2: [174.43142000000003, -126.03956000000001], to: [175.05017000000004, -127.87518000000001]}, %) // CubicBezierRelative |> bezierCurve(control1 = [175.68767000000003, -129.76643], control2 = [174.43142000000003, -126.03956000000001], end = [175.05017000000004, -127.87518000000001]) // CubicBezierRelative
|> line(endAbsolute = [177.68767000000003, -129.76643]) // HorizontalLineRelative |> line(endAbsolute = [177.68767000000003, -129.76643]) // HorizontalLineRelative
|> line(endAbsolute = [179.68767000000003, -133.76643]) // LineRelative |> line(endAbsolute = [179.68767000000003, -133.76643]) // LineRelative
|> line(endAbsolute = [185.68767000000003, -138.76643]) // LineRelative |> line(endAbsolute = [185.68767000000003, -138.76643]) // LineRelative
|> bezierCurve({ control1: [202.68767000000003, -139.76643], control2: [191.47452, -140.21315], to: [196.74116000000004, -140.04174]}, %) // CubicBezierRelative |> bezierCurve(control1 = [202.68767000000003, -139.76643], control2 = [191.47452, -140.21315], end = [196.74116000000004, -140.04174]) // CubicBezierRelative
|> bezierCurve({ control1: [210.68767000000003, -135.76643], control2: [207.25921000000002, -138.23436], to: [207.25921000000002, -138.23436]}, %) // CubicBezierRelative |> bezierCurve(control1 = [210.68767000000003, -135.76643], control2 = [207.25921000000002, -138.23436], end = [207.25921000000002, -138.23436]) // CubicBezierRelative
|> bezierCurve({ control1: [215.35564000000002, -128.27815], control2: [213.71484000000004, -132.0027], to: [213.71484000000004, -132.0027]}, %) // CubicBezierRelative |> bezierCurve(control1 = [215.35564000000002, -128.27815], control2 = [213.71484000000004, -132.0027], end = [213.71484000000004, -132.0027]) // CubicBezierRelative
|> bezierCurve({ control1: [216.91033000000002, -104.88753000000001], control2: [217.63118000000003, -120.57069000000001], to: [217.01741, -112.86275]}, %) // CubicBezierRelative |> bezierCurve(control1 = [216.91033000000002, -104.88753000000001], control2 = [217.63118000000003, -120.57069000000001], end = [217.01741, -112.86275]) // CubicBezierRelative
|> bezierCurve({ control1: [214.68767000000003, -85.76643500000002], control2: [216.67209000000003, -98.33796500000001], to: [216.17402, -92.15775500000001]}, %) // CubicBezierRelative |> bezierCurve(control1 = [214.68767000000003, -85.76643500000002], control2 = [216.67209000000003, -98.33796500000001], end = [216.17402, -92.15775500000001]) // CubicBezierRelative
|> line(endAbsolute = [210.68767000000003, -78.76643500000002]) // LineRelative |> line(endAbsolute = [210.68767000000003, -78.76643500000002]) // LineRelative
|> line(endAbsolute = [207.68767000000003, -78.76643500000002]) // HorizontalLineRelative |> line(endAbsolute = [207.68767000000003, -78.76643500000002]) // HorizontalLineRelative
|> line(endAbsolute = [207.68767000000003, -75.76643500000002]) // VerticalLineHorizonal |> line(endAbsolute = [207.68767000000003, -75.76643500000002]) // VerticalLineHorizonal
|> line(endAbsolute = [203.68767000000003, -74.76643500000002]) // LineRelative |> line(endAbsolute = [203.68767000000003, -74.76643500000002]) // LineRelative
|> line(endAbsolute = [204.68767000000003, -70.76643500000002]) // LineRelative |> line(endAbsolute = [204.68767000000003, -70.76643500000002]) // LineRelative
|> line(endAbsolute = [209.50017000000003, -70.01643500000002]) // LineRelative |> line(endAbsolute = [209.50017000000003, -70.01643500000002]) // LineRelative
|> bezierCurve({ control1: [226.68767000000003, -64.76643500000002], control2: [215.57464000000002, -68.78927500000002], to: [220.89892000000003, -66.95330500000001]}, %) // CubicBezierRelative |> bezierCurve(control1 = [226.68767000000003, -64.76643500000002], control2 = [215.57464000000002, -68.78927500000002], end = [220.89892000000003, -66.95330500000001]) // CubicBezierRelative
|> bezierCurve({ control1: [247.31267000000003, -58.578935000000016], control2: [233.53624000000002, -62.60005500000001], to: [240.40800000000002, -60.55978500000002]}, %) // CubicBezierRelative |> bezierCurve(control1 = [247.31267000000003, -58.578935000000016], control2 = [233.53624000000002, -62.60005500000001], end = [240.40800000000002, -60.55978500000002]) // CubicBezierRelative
|> bezierCurve({ control1: [277.21111, -48.92659500000001], control2: [257.37096, -55.63882500000002], to: [267.2794, -52.26503500000001]}, %) // CubicBezierRelative |> bezierCurve(control1 = [277.21111, -48.92659500000001], control2 = [257.37096, -55.63882500000002], end = [267.2794, -52.26503500000001]) // CubicBezierRelative
|> bezierCurve({ control1: [299.68767, -41.766435000000016], control2: [284.67443000000003, -46.437325000000016], to: [292.16675000000004, -44.07484500000001]}, %) // CubicBezierRelative |> bezierCurve(control1 = [299.68767, -41.766435000000016], control2 = [284.67443000000003, -46.437325000000016], end = [292.16675000000004, -44.07484500000001]) // CubicBezierRelative
|> line(endAbsolute = [299.68767, -39.766435000000016]) // VerticalLineHorizonal |> line(endAbsolute = [299.68767, -39.766435000000016]) // VerticalLineHorizonal
|> bezierCurve({ control1: [306.50017, -39.328935000000016], control2: [301.93580000000003, -39.62206500000001], to: [304.18392, -39.477685000000015]}, %) // CubicBezierRelative |> bezierCurve(control1 = [306.50017, -39.328935000000016], control2 = [301.93580000000003, -39.62206500000001], end = [304.18392, -39.477685000000015]) // CubicBezierRelative
|> bezierCurve({ control1: [316.68767, -37.766435000000016], control2: [313.07319, -39.10529500000001], to: [313.07319, -39.10529500000001]}, %) // CubicBezierRelative |> bezierCurve(control1 = [316.68767, -37.766435000000016], control2 = [313.07319, -39.10529500000001], end = [313.07319, -39.10529500000001]) // CubicBezierRelative
|> line(endAbsolute = [316.68767, -35.766435000000016]) // VerticalLineHorizonal |> line(endAbsolute = [316.68767, -35.766435000000016]) // VerticalLineHorizonal
|> line(endAbsolute = [320.56267, -35.016435000000016]) // LineRelative |> line(endAbsolute = [320.56267, -35.016435000000016]) // LineRelative
|> bezierCurve({ control1: [335.68767, -29.766435000000016], control2: [325.89187000000004, -33.71663500000002], to: [330.60815, -31.833685000000017]}, %) // CubicBezierRelative |> bezierCurve(control1 = [335.68767, -29.766435000000016], control2 = [325.89187000000004, -33.71663500000002], end = [330.60815, -31.833685000000017]) // CubicBezierRelative
|> bezierCurve({ control1: [343.56267, -27.266435000000016], control2: [339.5858, -28.528935000000015], to: [339.5858, -28.528935000000015]}, %) // CubicBezierRelative |> bezierCurve(control1 = [343.56267, -27.266435000000016], control2 = [339.5858, -28.528935000000015], end = [339.5858, -28.528935000000015]) // CubicBezierRelative
|> line(endAbsolute = [350.68767, -24.766435000000016]) // LineRelative |> line(endAbsolute = [350.68767, -24.766435000000016]) // LineRelative
|> line(endAbsolute = [354.68767, -20.766435000000016]) // LineRelative |> line(endAbsolute = [354.68767, -20.766435000000016]) // LineRelative
|> bezierCurve({ control1: [295.68767, -33.766435000000016], control2: [334.809, -20.766435000000016], to: [314.44364, -27.758665000000015]}, %) // CubicBezierRelative |> bezierCurve(control1 = [295.68767, -33.766435000000016], control2 = [334.809, -20.766435000000016], end = [314.44364, -27.758665000000015]) // CubicBezierRelative
// StopRelative // StopRelative
|> line(endAbsolute = [299.68767, -66.76643500000002]) // MoveRelative |> line(endAbsolute = [299.68767, -66.76643500000002]) // MoveRelative
|> bezierCurve({ control1: [285.00017, -76.64143500000002], control2: [293.75788, -69.23718500000001], to: [289.90768, -72.43500500000002]}, %) // CubicBezierRelative |> bezierCurve(control1 = [285.00017, -76.64143500000002], control2 = [293.75788, -69.23718500000001], end = [289.90768, -72.43500500000002]) // CubicBezierRelative
|> bezierCurve({ control1: [276.37517, -85.70393500000002], control2: [279.86247000000003, -81.42042500000002], to: [279.86247000000003, -81.42042500000002]}, %) // CubicBezierRelative |> bezierCurve(control1 = [276.37517, -85.70393500000002], control2 = [279.86247000000003, -81.42042500000002], end = [279.86247000000003, -81.42042500000002]) // CubicBezierRelative
|> bezierCurve({ control1: [273.68767, -88.76643500000002], control2: [275.48830000000004, -86.71456500000002], to: [274.60142, -87.72518500000001]}, %) // CubicBezierRelative |> bezierCurve(control1 = [273.68767, -88.76643500000002], control2 = [275.48830000000004, -86.71456500000002], end = [274.60142, -87.72518500000001]) // CubicBezierRelative
|> line(endAbsolute = [267.68767, -91.76643500000002]) // LineRelative |> line(endAbsolute = [267.68767, -91.76643500000002]) // LineRelative
|> line(endAbsolute = [264.68767, -96.76643500000002]) // LineRelative |> line(endAbsolute = [264.68767, -96.76643500000002]) // LineRelative
|> bezierCurve({ control1: [266.68767, -111.76643000000001], control2: [264.32138000000003, -104.69775000000001], to: [264.32138000000003, -104.69775000000001]}, %) // CubicBezierRelative |> bezierCurve(control1 = [266.68767, -111.76643000000001], control2 = [264.32138000000003, -104.69775000000001], end = [264.32138000000003, -104.69775000000001]) // CubicBezierRelative
|> bezierCurve({ control1: [278.68767, -123.76643000000001], control2: [270.61411000000004, -116.17816000000002], to: [274.2035, -120.01380000000002]}, %) // CubicBezierRelative |> bezierCurve(control1 = [278.68767, -123.76643000000001], control2 = [270.61411000000004, -116.17816000000002], end = [274.2035, -120.01380000000002]) // CubicBezierRelative
|> line(endAbsolute = [282.93767, -126.01643000000001]) // LineRelative |> line(endAbsolute = [282.93767, -126.01643000000001]) // LineRelative
|> bezierCurve({ control1: [303.68767, -126.76643000000001], control2: [289.896, -127.11512000000002], to: [296.66137000000003, -126.99871000000002]}, %) // CubicBezierRelative |> bezierCurve(control1 = [303.68767, -126.76643000000001], control2 = [289.896, -127.11512000000002], end = [296.66137000000003, -126.99871000000002]) // CubicBezierRelative
|> line(endAbsolute = [305.68767, -125.76643000000001]) // LineRelative |> line(endAbsolute = [305.68767, -125.76643000000001]) // LineRelative
|> line(endAbsolute = [310.68767, -124.76643000000001]) // LineRelative |> line(endAbsolute = [310.68767, -124.76643000000001]) // LineRelative
|> line(endAbsolute = [317.68767, -122.76643000000001]) // LineRelative |> line(endAbsolute = [317.68767, -122.76643000000001]) // LineRelative
|> bezierCurve({ control1: [324.37517, -113.14143000000001], control2: [322.56495, -117.43458000000001], to: [322.56495, -117.43458000000001]}, %) // CubicBezierRelative |> bezierCurve(control1 = [324.37517, -113.14143000000001], control2 = [322.56495, -117.43458000000001], end = [322.56495, -117.43458000000001]) // CubicBezierRelative
|> bezierCurve({ control1: [327.68767, -96.76643500000002], control2: [326.02173000000005, -107.65292000000001], to: [327.05405, -102.46899000000002]}, %) // CubicBezierRelative |> bezierCurve(control1 = [327.68767, -96.76643500000002], control2 = [326.02173000000005, -107.65292000000001], end = [327.05405, -102.46899000000002]) // CubicBezierRelative
|> bezierCurve({ control1: [323.37517, -79.39143500000002], control2: [327.04242000000005, -90.45732500000001], to: [325.54155000000003, -85.36362500000001]}, %) // CubicBezierRelative |> bezierCurve(control1 = [323.37517, -79.39143500000002], control2 = [327.04242000000005, -90.45732500000001], end = [325.54155000000003, -85.36362500000001]) // CubicBezierRelative
|> bezierCurve({ control1: [320.68767, -73.76643500000002], control2: [322.48830000000004, -77.53518500000001], to: [321.60142, -75.67893500000001]}, %) // CubicBezierRelative |> bezierCurve(control1 = [320.68767, -73.76643500000002], control2 = [322.48830000000004, -77.53518500000001], end = [321.60142, -75.67893500000001]) // CubicBezierRelative
|> line(endAbsolute = [315.68767, -68.76643500000002]) // LineRelative |> line(endAbsolute = [315.68767, -68.76643500000002]) // LineRelative
|> bezierCurve({ control1: [305.43767, -66.32893500000002], control2: [310.76687000000004, -66.51488500000002], to: [310.76687000000004, -66.51488500000002]}, %) // CubicBezierRelative |> bezierCurve(control1 = [305.43767, -66.32893500000002], control2 = [310.76687000000004, -66.51488500000002], end = [310.76687000000004, -66.51488500000002]) // CubicBezierRelative
|> bezierCurve({ control1: [299.68767, -66.76643500000002], control2: [302.59142, -66.54550500000002], to: [302.59142, -66.54550500000002]}, %) // CubicBezierRelative |> bezierCurve(control1 = [299.68767, -66.76643500000002], control2 = [302.59142, -66.54550500000002], end = [302.59142, -66.54550500000002]) // CubicBezierRelative
// StopRelative // StopRelative
|> line(endAbsolute = [240.68767000000003, -68.76643500000002]) // MoveRelative |> line(endAbsolute = [240.68767000000003, -68.76643500000002]) // MoveRelative
|> bezierCurve({ control1: [222.68767000000003, -80.76643500000002], control2: [233.66999, -72.11131500000002], to: [228.65800000000002, -75.79116500000002]}, %) // CubicBezierRelative |> bezierCurve(control1 = [222.68767000000003, -80.76643500000002], control2 = [233.66999, -72.11131500000002], end = [228.65800000000002, -75.79116500000002]) // CubicBezierRelative
|> line(endAbsolute = [219.68767000000003, -86.76643500000002]) // LineRelative |> line(endAbsolute = [219.68767000000003, -86.76643500000002]) // LineRelative
|> bezierCurve({ control1: [222.55095000000003, -116.67268000000001], control2: [219.05386000000001, -97.26953500000002], to: [220.04332000000002, -106.46619000000001]}, %) // CubicBezierRelative |> bezierCurve(control1 = [222.55095000000003, -116.67268000000001], control2 = [219.05386000000001, -97.26953500000002], end = [220.04332000000002, -106.46619000000001]) // CubicBezierRelative
|> bezierCurve({ control1: [227.68767000000003, -130.76643], control2: [223.91824000000003, -121.59681000000002], to: [225.39892000000003, -126.18894000000002]}, %) // CubicBezierRelative |> bezierCurve(control1 = [227.68767000000003, -130.76643], control2 = [223.91824000000003, -121.59681000000002], end = [225.39892000000003, -126.18894000000002]) // CubicBezierRelative
|> bezierCurve({ control1: [236.43377000000004, -136.4969], control2: [232.25590000000003, -134.74853000000002], to: [232.25590000000003, -134.74853000000002]}, %) // CubicBezierRelative |> bezierCurve(control1 = [236.43377000000004, -136.4969], control2 = [232.25590000000003, -134.74853000000002], end = [232.25590000000003, -134.74853000000002]) // CubicBezierRelative
|> bezierCurve({ control1: [249.75017000000003, -138.07893], control2: [241.08415000000005, -137.88476], to: [244.90570000000002, -138.13253]}, %) // CubicBezierRelative |> bezierCurve(control1 = [249.75017000000003, -138.07893], control2 = [241.08415000000005, -137.88476], end = [244.90570000000002, -138.13253]) // CubicBezierRelative
|> bezierCurve({ control1: [254.34783000000002, -138.06723000000002], control2: [251.26740000000004, -138.07493000000002], to: [252.78463000000002, -138.07093]}, %) // CubicBezierRelative |> bezierCurve(control1 = [254.34783000000002, -138.06723000000002], control2 = [251.26740000000004, -138.07493000000002], end = [252.78463000000002, -138.07093]) // CubicBezierRelative
|> bezierCurve({ control1: [265.68767, -135.76644000000002], control2: [259.20097000000004, -137.88174000000004], to: [259.20097000000004, -137.88174000000004]}, %) // CubicBezierRelative |> bezierCurve(control1 = [265.68767, -135.76644000000002], control2 = [259.20097000000004, -137.88174000000004], end = [259.20097000000004, -137.88174000000004]) // CubicBezierRelative
|> line(endAbsolute = [265.68767, -132.76644000000002]) // VerticalLineHorizonal |> line(endAbsolute = [265.68767, -132.76644000000002]) // VerticalLineHorizonal
|> line(endAbsolute = [267.68767, -132.76644000000002]) // HorizontalLineRelative |> line(endAbsolute = [267.68767, -132.76644000000002]) // HorizontalLineRelative
|> bezierCurve({ control1: [268.56267, -122.32894000000002], control2: [268.96128000000004, -128.41242000000003], to: [268.96128000000004, -128.41242000000003]}, %) // CubicBezierRelative |> bezierCurve(control1 = [268.56267, -122.32894000000002], control2 = [268.96128000000004, -128.41242000000003], end = [268.96128000000004, -128.41242000000003]) // CubicBezierRelative
|> line(endAbsolute = [267.68767, -115.76644000000002]) // LineRelative |> line(endAbsolute = [267.68767, -115.76644000000002]) // LineRelative
|> line(endAbsolute = [262.68767, -110.76644000000002]) // LineRelative |> line(endAbsolute = [262.68767, -110.76644000000002]) // LineRelative
|> line(endAbsolute = [259.68767, -104.76644000000002]) // LineRelative |> line(endAbsolute = [259.68767, -104.76644000000002]) // LineRelative
@ -211,260 +211,260 @@ const svg = startSketchOn(XY)
|> line(endAbsolute = [263.68767, -91.76644500000002]) // LineRelative |> line(endAbsolute = [263.68767, -91.76644500000002]) // LineRelative
|> line(endAbsolute = [263.68767, -88.76644500000002]) // VerticalLineHorizonal |> line(endAbsolute = [263.68767, -88.76644500000002]) // VerticalLineHorizonal
|> line(endAbsolute = [265.68767, -88.76644500000002]) // HorizontalLineRelative |> line(endAbsolute = [265.68767, -88.76644500000002]) // HorizontalLineRelative
|> bezierCurve({ control1: [265.68767, -74.76644500000002], control2: [265.77327, -84.10056500000002], to: [265.76887000000005, -79.43241500000002]}, %) // CubicBezierRelative |> bezierCurve(control1 = [265.68767, -74.76644500000002], control2 = [265.77327, -84.10056500000002], end = [265.76887000000005, -79.43241500000002]) // CubicBezierRelative
|> line(endAbsolute = [263.68767, -71.76644500000002]) // LineRelative |> line(endAbsolute = [263.68767, -71.76644500000002]) // LineRelative
|> line(endAbsolute = [257.68767, -68.76644500000002]) // LineRelative |> line(endAbsolute = [257.68767, -68.76644500000002]) // LineRelative
|> bezierCurve({ control1: [240.68767000000003, -68.76644500000002], control2: [251.63750000000002, -68.30105500000002], to: [246.62747000000002, -68.01396500000001]}, %) // CubicBezierRelative |> bezierCurve(control1 = [240.68767000000003, -68.76644500000002], control2 = [251.63750000000002, -68.30105500000002], end = [246.62747000000002, -68.01396500000001]) // CubicBezierRelative
// StopRelative // StopRelative
|> line(endAbsolute = [348.06267, -71.45394500000002]) // MoveRelative |> line(endAbsolute = [348.06267, -71.45394500000002]) // MoveRelative
|> bezierCurve({ control1: [336.68767, -78.76644500000002], control2: [342.24112, -73.65657500000002], to: [342.24112, -73.65657500000002]}, %) // CubicBezierRelative |> bezierCurve(control1 = [336.68767, -78.76644500000002], control2 = [342.24112, -73.65657500000002], end = [342.24112, -73.65657500000002]) // CubicBezierRelative
|> bezierCurve({ control1: [331.68767, -85.76644500000002], control2: [333.86052, -82.22373500000002], to: [333.86052, -82.22373500000002]}, %) // CubicBezierRelative |> bezierCurve(control1 = [331.68767, -85.76644500000002], control2 = [333.86052, -82.22373500000002], end = [333.86052, -82.22373500000002]) // CubicBezierRelative
|> bezierCurve({ control1: [330.68767, -113.76644000000002], control2: [329.44062, -94.75465500000001], to: [330.36224000000004, -104.56387000000002]}, %) // CubicBezierRelative |> bezierCurve(control1 = [330.68767, -113.76644000000002], control2 = [329.44062, -94.75465500000001], end = [330.36224000000004, -104.56387000000002]) // CubicBezierRelative
|> bezierCurve({ control1: [333.68767, -125.76644000000002], control2: [331.54987, -120.49367000000002], to: [331.54987, -120.49367000000002]}, %) // CubicBezierRelative |> bezierCurve(control1 = [333.68767, -125.76644000000002], control2 = [331.54987, -120.49367000000002], end = [331.54987, -120.49367000000002]) // CubicBezierRelative
|> bezierCurve({ control1: [339.68767, -134.76644000000002], control2: [336.35378000000003, -130.85268000000002], to: [336.35378000000003, -130.85268000000002]}, %) // CubicBezierRelative |> bezierCurve(control1 = [339.68767, -134.76644000000002], control2 = [336.35378000000003, -130.85268000000002], end = [336.35378000000003, -130.85268000000002]) // CubicBezierRelative
|> line(endAbsolute = [344.68767, -136.76644000000002]) // LineRelative |> line(endAbsolute = [344.68767, -136.76644000000002]) // LineRelative
|> bezierCurve({ control1: [354.50017, -136.89144000000002], control2: [347.95588000000004, -136.90388000000002], to: [351.22938000000005, -136.93595000000002]}, %) // CubicBezierRelative |> bezierCurve(control1 = [354.50017, -136.89144000000002], control2 = [347.95588000000004, -136.90388000000002], end = [351.22938000000005, -136.93595000000002]) // CubicBezierRelative
|> bezierCurve({ control1: [359.7072, -136.83674000000002], control2: [357.07765, -136.86434000000003], to: [357.07765, -136.86434000000003]}, %) // CubicBezierRelative |> bezierCurve(control1 = [359.7072, -136.83674000000002], control2 = [357.07765, -136.86434000000003], end = [357.07765, -136.86434000000003]) // CubicBezierRelative
|> bezierCurve({ control1: [363.68767, -136.76644000000002], control2: [361.02076, -136.81354000000002], to: [362.33431, -136.79034000000001]}, %) // CubicBezierRelative |> bezierCurve(control1 = [363.68767, -136.76644000000002], control2 = [361.02076, -136.81354000000002], end = [362.33431, -136.79034000000001]) // CubicBezierRelative
|> line(endAbsolute = [364.68767, -133.76644000000002]) // LineRelative |> line(endAbsolute = [364.68767, -133.76644000000002]) // LineRelative
|> line(endAbsolute = [369.68767, -132.76644000000002]) // LineRelative |> line(endAbsolute = [369.68767, -132.76644000000002]) // LineRelative
|> line(endAbsolute = [374.68767, -127.76644000000002]) // LineRelative |> line(endAbsolute = [374.68767, -127.76644000000002]) // LineRelative
|> line(endAbsolute = [375.68767, -125.76644000000002]) // LineRelative |> line(endAbsolute = [375.68767, -125.76644000000002]) // LineRelative
|> line(endAbsolute = [378.68767, -124.76644000000002]) // LineRelative |> line(endAbsolute = [378.68767, -124.76644000000002]) // LineRelative
|> line(endAbsolute = [381.68767, -119.76644000000002]) // LineRelative |> line(endAbsolute = [381.68767, -119.76644000000002]) // LineRelative
|> bezierCurve({ control1: [383.68767, -90.76644500000002], control2: [383.35291, -110.03795000000002], to: [384.23553000000004, -100.62782000000001]}, %) // CubicBezierRelative |> bezierCurve(control1 = [383.68767, -90.76644500000002], control2 = [383.35291, -110.03795000000002], end = [384.23553000000004, -100.62782000000001]) // CubicBezierRelative
|> bezierCurve({ control1: [376.68767, -74.76644500000002], control2: [381.89678000000004, -84.77624500000002], to: [379.89992, -80.12019500000002]}, %) // CubicBezierRelative |> bezierCurve(control1 = [376.68767, -74.76644500000002], control2 = [381.89678000000004, -84.77624500000002], end = [379.89992, -80.12019500000002]) // CubicBezierRelative
|> bezierCurve({ control1: [361.68767, -69.76644500000002], control2: [371.66314, -72.44743500000001], to: [367.11478000000005, -70.85187500000002]}, %) // CubicBezierRelative |> bezierCurve(control1 = [361.68767, -69.76644500000002], control2 = [371.66314, -72.44743500000001], end = [367.11478000000005, -70.85187500000002]) // CubicBezierRelative
|> bezierCurve({ control1: [348.06267, -71.45394500000002], control2: [353.98599, -69.38331500000002], to: [353.98599, -69.38331500000002]}, %) // CubicBezierRelative |> bezierCurve(control1 = [348.06267, -71.45394500000002], control2 = [353.98599, -69.38331500000002], end = [353.98599, -69.38331500000002]) // CubicBezierRelative
// StopRelative // StopRelative
|> line(endAbsolute = [420.68767, -75.76644500000002]) // MoveRelative |> line(endAbsolute = [420.68767, -75.76644500000002]) // MoveRelative
|> line(endAbsolute = [414.68767, -78.76644500000002]) // MoveRelative |> line(endAbsolute = [414.68767, -78.76644500000002]) // MoveRelative
|> line(endAbsolute = [411.68767, -81.76644500000002]) // MoveRelative |> line(endAbsolute = [411.68767, -81.76644500000002]) // MoveRelative
|> bezierCurve({ control1: [394.68767, -89.76644500000002], control2: [406.10302, -84.70574500000002], to: [400.49226000000004, -87.27876500000002]}, %) // CubicBezierRelative |> bezierCurve(control1 = [394.68767, -89.76644500000002], control2 = [406.10302, -84.70574500000002], end = [400.49226000000004, -87.27876500000002]) // CubicBezierRelative
|> line(endAbsolute = [390.68767, -93.76644500000002]) // LineRelative |> line(endAbsolute = [390.68767, -93.76644500000002]) // LineRelative
|> bezierCurve({ control1: [387.00017, -105.95394000000002], control2: [388.81932, -97.84915500000002], to: [387.7277, -101.52261000000001]}, %) // CubicBezierRelative |> bezierCurve(control1 = [387.00017, -105.95394000000002], control2 = [388.81932, -97.84915500000002], end = [387.7277, -101.52261000000001]) // CubicBezierRelative
|> bezierCurve({ control1: [386.68767, -123.76644000000002], control2: [386.61176, -111.93554000000002], to: [386.45034000000004, -117.77373000000001]}, %) // CubicBezierRelative |> bezierCurve(control1 = [386.68767, -123.76644000000002], control2 = [386.61176, -111.93554000000002], end = [386.45034000000004, -117.77373000000001]) // CubicBezierRelative
|> line(endAbsolute = [389.68767, -129.76644000000002]) // LineRelative |> line(endAbsolute = [389.68767, -129.76644000000002]) // LineRelative
|> bezierCurve({ control1: [401.68767, -140.76644000000002], control2: [393.59112000000005, -133.6699], to: [397.39354000000003, -137.31580000000002]}, %) // CubicBezierRelative |> bezierCurve(control1 = [401.68767, -140.76644000000002], control2 = [393.59112000000005, -133.6699], end = [397.39354000000003, -137.31580000000002]) // CubicBezierRelative
|> line(endAbsolute = [406.68767, -142.76644000000002]) // LineRelative |> line(endAbsolute = [406.68767, -142.76644000000002]) // LineRelative
|> bezierCurve({ control1: [419.18767, -141.64144000000002], control2: [414.16723, -143.08983], to: [414.16723, -143.08983]}, %) // CubicBezierRelative |> bezierCurve(control1 = [419.18767, -141.64144000000002], control2 = [414.16723, -143.08983], end = [414.16723, -143.08983]) // CubicBezierRelative
|> bezierCurve({ control1: [431.68767, -133.76644000000002], control2: [424.08865000000003, -139.59937000000002], to: [427.61672000000004, -137.15890000000002]}, %) // CubicBezierRelative |> bezierCurve(control1 = [431.68767, -133.76644000000002], control2 = [424.08865000000003, -139.59937000000002], end = [427.61672000000004, -137.15890000000002]) // CubicBezierRelative
|> bezierCurve({ control1: [438.81267, -125.32894000000002], control2: [436.54426, -129.29261000000002], to: [436.54426, -129.29261000000002]}, %) // CubicBezierRelative |> bezierCurve(control1 = [438.81267, -125.32894000000002], control2 = [436.54426, -129.29261000000002], end = [436.54426, -129.29261000000002]) // CubicBezierRelative
|> bezierCurve({ control1: [443.68767, -106.76644000000002], control2: [441.36597, -119.11592000000002], to: [442.65924, -113.42420000000001]}, %) // CubicBezierRelative |> bezierCurve(control1 = [443.68767, -106.76644000000002], control2 = [441.36597, -119.11592000000002], end = [442.65924, -113.42420000000001]) // CubicBezierRelative
|> bezierCurve({ control1: [442.68767, -87.76644500000002], control2: [443.82181, -100.36380000000001], to: [443.70527000000004, -94.09420500000002]}, %) // CubicBezierRelative |> bezierCurve(control1 = [442.68767, -87.76644500000002], control2 = [443.82181, -100.36380000000001], end = [443.70527000000004, -94.09420500000002]) // CubicBezierRelative
|> bezierCurve({ control1: [438.68767, -79.76644500000002], control2: [441.01966000000004, -83.40792500000002], to: [441.01966000000004, -83.40792500000002]}, %) // CubicBezierRelative |> bezierCurve(control1 = [438.68767, -79.76644500000002], control2 = [441.01966000000004, -83.40792500000002], end = [441.01966000000004, -83.40792500000002]) // CubicBezierRelative
|> line(endAbsolute = [434.68767, -76.76644500000002]) // LineRelative |> line(endAbsolute = [434.68767, -76.76644500000002]) // LineRelative
|> bezierCurve({ control1: [420.68767, -75.76644500000002], control2: [428.38627, -75.54725500000002], to: [428.38627, -75.54725500000002]}, %) // CubicBezierRelative |> bezierCurve(control1 = [420.68767, -75.76644500000002], control2 = [428.38627, -75.54725500000002], end = [428.38627, -75.54725500000002]) // CubicBezierRelative
|> line(endAbsolute = [119.83194, -25.193075]) // MoveRelative |> line(endAbsolute = [119.83194, -25.193075]) // MoveRelative
|> bezierCurve({ control1: [126.83194, -26.193075], control2: [122.14194, -25.523075], to: [124.45194000000001, -25.853075]}, %) // CubicBezierRelative |> bezierCurve(control1 = [126.83194, -26.193075], control2 = [122.14194, -25.523075], end = [124.45194000000001, -25.853075]) // CubicBezierRelative
|> bezierCurve({ control1: [129.83194, -32.193075], control2: [127.82194, -28.173075], to: [128.81194, -30.153075]}, %) // CubicBezierRelative |> bezierCurve(control1 = [129.83194, -32.193075], control2 = [127.82194, -28.173075], end = [128.81194, -30.153075]) // CubicBezierRelative
|> bezierCurve({ control1: [130.83194, -33.193075], control2: [130.16194000000002, -32.523075], to: [130.49194, -32.853075]}, %) // CubicBezierRelative |> bezierCurve(control1 = [130.83194, -33.193075], control2 = [130.16194000000002, -32.523075], end = [130.49194, -32.853075]) // CubicBezierRelative
|> bezierCurve({ control1: [131.83194, -41.193075], control2: [131.16194000000002, -35.833075], to: [131.49194, -38.473075]}, %) // CubicBezierRelative |> bezierCurve(control1 = [131.83194, -41.193075], control2 = [131.16194000000002, -35.833075], end = [131.49194, -38.473075]) // CubicBezierRelative
|> bezierCurve({ control1: [133.83194, -38.193075], control2: [132.49194, -40.203075], to: [133.15194, -39.213075]}, %) // CubicBezierRelative |> bezierCurve(control1 = [133.83194, -38.193075], control2 = [132.49194, -40.203075], end = [133.15194, -39.213075]) // CubicBezierRelative
|> bezierCurve({ control1: [135.26944, -32.068075], control2: [134.30631, -36.171825], to: [134.78069, -34.150575]}, %) // CubicBezierRelative |> bezierCurve(control1 = [135.26944, -32.068075], control2 = [134.30631, -36.171825], end = [134.78069, -34.150575]) // CubicBezierRelative
|> bezierCurve({ control1: [136.83194, -26.193075], control2: [135.78506000000002, -30.129325], to: [136.30069, -28.190575]}, %) // CubicBezierRelative |> bezierCurve(control1 = [136.83194, -26.193075], control2 = [135.78506000000002, -30.129325], end = [136.30069, -28.190575]) // CubicBezierRelative
|> bezierCurve({ control1: [139.83194, -25.193075], control2: [137.82194, -25.863075000000002], to: [138.81194, -25.533075]}, %) // CubicBezierRelative |> bezierCurve(control1 = [139.83194, -25.193075], control2 = [137.82194, -25.863075000000002], end = [138.81194, -25.533075]) // CubicBezierRelative
|> bezierCurve({ control1: [137.39444, -44.318075], control2: [139.51153, -31.793465], to: [139.18359, -37.939365]}, %) // CubicBezierRelative |> bezierCurve(control1 = [137.39444, -44.318075], control2 = [139.51153, -31.793465], end = [139.18359, -37.939365]) // CubicBezierRelative
|> bezierCurve({ control1: [133.83194, -52.193075], control2: [135.83194, -48.193075], to: [135.83194, -48.193075]}, %) // CubicBezierRelative |> bezierCurve(control1 = [133.83194, -52.193075], control2 = [135.83194, -48.193075], end = [135.83194, -48.193075]) // CubicBezierRelative
|> bezierCurve({ control1: [129.83194, -51.193075], control2: [132.51194, -51.863075], to: [131.19194000000002, -51.533075000000004]}, %) // CubicBezierRelative |> bezierCurve(control1 = [129.83194, -51.193075], control2 = [132.51194, -51.863075], end = [131.19194000000002, -51.533075000000004]) // CubicBezierRelative
|> bezierCurve({ control1: [124.83194, -41.193075], control2: [126.83194, -46.193075], to: [126.83194, -46.193075]}, %) // CubicBezierRelative |> bezierCurve(control1 = [124.83194, -41.193075], control2 = [126.83194, -46.193075], end = [126.83194, -46.193075]) // CubicBezierRelative
|> bezierCurve({ control1: [120.83194, -51.193075], control2: [123.51194000000001, -44.493075], to: [122.19194, -47.793075]}, %) // CubicBezierRelative |> bezierCurve(control1 = [120.83194, -51.193075], control2 = [123.51194000000001, -44.493075], end = [122.19194, -47.793075]) // CubicBezierRelative
|> bezierCurve({ control1: [117.83194, -51.193075], control2: [119.84194000000001, -51.193075], to: [118.85194, -51.193075]}, %) // CubicBezierRelative |> bezierCurve(control1 = [117.83194, -51.193075], control2 = [119.84194000000001, -51.193075], end = [118.85194, -51.193075]) // CubicBezierRelative
|> bezierCurve({ control1: [116.83194, -50.193075], control2: [117.50194, -50.863075], to: [117.17194, -50.533075000000004]}, %) // CubicBezierRelative |> bezierCurve(control1 = [116.83194, -50.193075], control2 = [117.50194, -50.863075], end = [117.17194, -50.533075000000004]) // CubicBezierRelative
|> bezierCurve({ control1: [118.83194, -26.193075], control2: [116.5899, -41.883314999999996], to: [116.78264, -34.269515]}, %) // CubicBezierRelative |> bezierCurve(control1 = [118.83194, -26.193075], control2 = [116.5899, -41.883314999999996], end = [116.78264, -34.269515]) // CubicBezierRelative
|> bezierCurve({ control1: [119.83194, -25.193075], control2: [119.16194, -25.863075000000002], to: [119.49194, -25.533075]}, %) // CubicBezierRelative |> bezierCurve(control1 = [119.83194, -25.193075], control2 = [119.16194, -25.863075000000002], end = [119.49194, -25.533075]) // CubicBezierRelative
|> line(endAbsolute = [65.254392, -26.686845]) // MoveRelative |> line(endAbsolute = [65.254392, -26.686845]) // MoveRelative
|> bezierCurve({ control1: [69.254392, -26.686845], control2: [66.57439199999999, -26.686845], to: [67.894392, -26.686845]}, %) // CubicBezierRelative |> bezierCurve(control1 = [69.254392, -26.686845], control2 = [66.57439199999999, -26.686845], end = [67.894392, -26.686845]) // CubicBezierRelative
|> bezierCurve({ control1: [70.254392, -32.686845000000005], control2: [69.584392, -28.666845000000002], to: [69.91439199999999, -30.646845000000003]}, %) // CubicBezierRelative |> bezierCurve(control1 = [70.254392, -32.686845000000005], control2 = [69.584392, -28.666845000000002], end = [69.91439199999999, -30.646845000000003]) // CubicBezierRelative
|> bezierCurve({ control1: [69.254392, -35.686845000000005], control2: [69.924392, -33.67684500000001], to: [69.594392, -34.666845]}, %) // CubicBezierRelative |> bezierCurve(control1 = [69.254392, -35.686845000000005], control2 = [69.924392, -33.67684500000001], end = [69.594392, -34.666845]) // CubicBezierRelative
|> bezierCurve({ control1: [69.254392, -44.686845000000005], control2: [69.21439199999999, -38.686575000000005], to: [69.210922, -41.687155000000004]}, %) // CubicBezierRelative |> bezierCurve(control1 = [69.254392, -44.686845000000005], control2 = [69.21439199999999, -38.686575000000005], end = [69.210922, -41.687155000000004]) // CubicBezierRelative
|> bezierCurve({ control1: [72.629392, -39.374345000000005], control2: [70.36814199999999, -42.93371500000001], to: [71.481892, -41.180595000000004]}, %) // CubicBezierRelative |> bezierCurve(control1 = [72.629392, -39.374345000000005], control2 = [70.36814199999999, -42.93371500000001], end = [71.481892, -41.180595000000004]) // CubicBezierRelative
|> bezierCurve({ control1: [78.254392, -30.686845000000005], control2: [74.483601, -36.465155], to: [76.34075899999999, -33.557295]}, %) // CubicBezierRelative |> bezierCurve(control1 = [78.254392, -30.686845000000005], control2 = [74.483601, -36.465155], end = [76.34075899999999, -33.557295]) // CubicBezierRelative
|> bezierCurve({ control1: [81.254392, -30.686845000000005], control2: [79.24439199999999, -30.686845000000005], to: [80.234392, -30.686845000000005]}, %) // CubicBezierRelative |> bezierCurve(control1 = [81.254392, -30.686845000000005], control2 = [79.24439199999999, -30.686845000000005], end = [80.234392, -30.686845000000005]) // CubicBezierRelative
|> bezierCurve({ control1: [80.004392, -42.811845000000005], control2: [81.254392, -38.686845000000005], to: [81.254392, -38.686845000000005]}, %) // CubicBezierRelative |> bezierCurve(control1 = [80.004392, -42.811845000000005], control2 = [81.254392, -38.686845000000005], end = [81.254392, -38.686845000000005]) // CubicBezierRelative
|> bezierCurve({ control1: [74.254392, -52.686845000000005], control2: [78.254392, -46.686845000000005], to: [78.254392, -46.686845000000005]}, %) // CubicBezierRelative |> bezierCurve(control1 = [74.254392, -52.686845000000005], control2 = [78.254392, -46.686845000000005], end = [78.254392, -46.686845000000005]) // CubicBezierRelative
|> bezierCurve({ control1: [73.254392, -53.686845000000005], control2: [73.924392, -53.016845], to: [73.594392, -53.346845]}, %) // CubicBezierRelative |> bezierCurve(control1 = [73.254392, -53.686845000000005], control2 = [73.924392, -53.016845], end = [73.594392, -53.346845]) // CubicBezierRelative
|> bezierCurve({ control1: [67.254392, -53.686845000000005], control2: [71.27439199999999, -53.686845000000005], to: [69.294392, -53.686845000000005]}, %) // CubicBezierRelative |> bezierCurve(control1 = [67.254392, -53.686845000000005], control2 = [71.27439199999999, -53.686845000000005], end = [69.294392, -53.686845000000005]) // CubicBezierRelative
|> bezierCurve({ control1: [61.254391999999996, -48.686845000000005], control2: [65.27439199999999, -52.03684500000001], to: [63.294391999999995, -50.38684500000001]}, %) // CubicBezierRelative |> bezierCurve(control1 = [61.254391999999996, -48.686845000000005], control2 = [65.27439199999999, -52.03684500000001], end = [63.294391999999995, -50.38684500000001]) // CubicBezierRelative
|> bezierCurve({ control1: [60.254391999999996, -46.686845000000005], control2: [60.924392, -48.02684500000001], to: [60.594392, -47.366845000000005]}, %) // CubicBezierRelative |> bezierCurve(control1 = [60.254391999999996, -46.686845000000005], control2 = [60.924392, -48.02684500000001], end = [60.594392, -47.366845000000005]) // CubicBezierRelative
|> bezierCurve({ control1: [61.254391999999996, -28.686845000000005], control2: [60.10475399999999, -40.47687500000001], to: [60.373141, -34.855605000000004]}, %) // CubicBezierRelative |> bezierCurve(control1 = [61.254391999999996, -28.686845000000005], control2 = [60.10475399999999, -40.47687500000001], end = [60.373141, -34.855605000000004]) // CubicBezierRelative
|> bezierCurve({ control1: [65.254392, -26.686845000000005], control2: [62.574391999999996, -28.026845000000005], to: [63.894391999999996, -27.366845000000005]}, %) // CubicBezierRelative |> bezierCurve(control1 = [65.254392, -26.686845000000005], control2 = [62.574391999999996, -28.026845000000005], end = [63.894391999999996, -27.366845000000005]) // CubicBezierRelative
|> line(endAbsolute = [185.48371, -31.108985]) // MoveRelative |> line(endAbsolute = [185.48371, -31.108985]) // MoveRelative
|> bezierCurve({ control1: [197.48371, -31.108985], control2: [189.48289, -31.028185], to: [193.48463, -31.022985000000002]}, %) // CubicBezierRelative |> bezierCurve(control1 = [197.48371, -31.108985], control2 = [189.48289, -31.028185], end = [193.48463, -31.022985000000002]) // CubicBezierRelative
|> bezierCurve({ control1: [198.48371, -36.108985000000004], control2: [197.81371000000001, -32.758985], to: [198.14371, -34.408985]}, %) // CubicBezierRelative |> bezierCurve(control1 = [198.48371, -36.108985000000004], control2 = [197.81371000000001, -32.758985], end = [198.14371, -34.408985]) // CubicBezierRelative
|> bezierCurve({ control1: [197.48371, -38.108985000000004], control2: [198.15371, -36.768985], to: [197.82371, -37.428985000000004]}, %) // CubicBezierRelative |> bezierCurve(control1 = [197.48371, -38.108985000000004], control2 = [198.15371, -36.768985], end = [197.82371, -37.428985000000004]) // CubicBezierRelative
|> bezierCurve({ control1: [189.48371, -38.108985000000004], control2: [194.84371000000002, -38.108985000000004], to: [192.20371, -38.108985000000004]}, %) // CubicBezierRelative |> bezierCurve(control1 = [189.48371, -38.108985000000004], control2 = [194.84371000000002, -38.108985000000004], end = [192.20371, -38.108985000000004]) // CubicBezierRelative
|> bezierCurve({ control1: [188.48371, -42.108985000000004], control2: [189.15371, -39.428985000000004], to: [188.82371, -40.748985000000005]}, %) // CubicBezierRelative |> bezierCurve(control1 = [188.48371, -42.108985000000004], control2 = [189.15371, -39.428985000000004], end = [188.82371, -40.748985000000005]) // CubicBezierRelative
|> bezierCurve({ control1: [196.48371, -43.108985000000004], control2: [191.12371, -42.438985], to: [193.76371, -42.768985]}, %) // CubicBezierRelative |> bezierCurve(control1 = [196.48371, -43.108985000000004], control2 = [191.12371, -42.438985], end = [193.76371, -42.768985]) // CubicBezierRelative
|> bezierCurve({ control1: [196.48371, -47.108985000000004], control2: [196.48371, -44.428985000000004], to: [196.48371, -45.748985000000005]}, %) // CubicBezierRelative |> bezierCurve(control1 = [196.48371, -47.108985000000004], control2 = [196.48371, -44.428985000000004], end = [196.48371, -45.748985000000005]) // CubicBezierRelative
|> bezierCurve({ control1: [191.54621, -48.983985000000004], control2: [194.85433, -47.727735], to: [193.22496, -48.346485]}, %) // CubicBezierRelative |> bezierCurve(control1 = [191.54621, -48.983985000000004], control2 = [194.85433, -47.727735], end = [193.22496, -48.346485]) // CubicBezierRelative
|> bezierCurve({ control1: [186.48371, -51.108985000000004], control2: [189.87558, -49.685235000000006], to: [188.20496, -50.38648500000001]}, %) // CubicBezierRelative |> bezierCurve(control1 = [186.48371, -51.108985000000004], control2 = [189.87558, -49.685235000000006], end = [188.20496, -50.38648500000001]) // CubicBezierRelative
|> bezierCurve({ control1: [185.48371, -53.108985000000004], control2: [186.15371, -51.768985], to: [185.82371, -52.428985000000004]}, %) // CubicBezierRelative |> bezierCurve(control1 = [185.48371, -53.108985000000004], control2 = [186.15371, -51.768985], end = [185.82371, -52.428985000000004]) // CubicBezierRelative
|> bezierCurve({ control1: [195.48371, -52.108985000000004], control2: [188.78371, -52.778985000000006], to: [192.08371, -52.44898500000001]}, %) // CubicBezierRelative |> bezierCurve(control1 = [195.48371, -52.108985000000004], control2 = [188.78371, -52.778985000000006], end = [192.08371, -52.44898500000001]) // CubicBezierRelative
|> bezierCurve({ control1: [193.48371, -56.108985000000004], control2: [194.82371, -53.428985000000004], to: [194.16371, -54.748985000000005]}, %) // CubicBezierRelative |> bezierCurve(control1 = [193.48371, -56.108985000000004], control2 = [194.82371, -53.428985000000004], end = [194.16371, -54.748985000000005]) // CubicBezierRelative
|> bezierCurve({ control1: [188.48371, -58.108985000000004], control2: [191.83371, -56.768985], to: [190.18371, -57.428985000000004]}, %) // CubicBezierRelative |> bezierCurve(control1 = [188.48371, -58.108985000000004], control2 = [191.83371, -56.768985], end = [190.18371, -57.428985000000004]) // CubicBezierRelative
|> bezierCurve({ control1: [183.48371, -58.108985000000004], control2: [186.83371, -58.108985000000004], to: [185.18371, -58.108985000000004]}, %) // CubicBezierRelative |> bezierCurve(control1 = [183.48371, -58.108985000000004], control2 = [186.83371, -58.108985000000004], end = [185.18371, -58.108985000000004]) // CubicBezierRelative
|> bezierCurve({ control1: [179.48371, -55.108985000000004], control2: [182.16371, -57.118985], to: [180.84371000000002, -56.12898500000001]}, %) // CubicBezierRelative |> bezierCurve(control1 = [179.48371, -55.108985000000004], control2 = [182.16371, -57.118985], end = [180.84371000000002, -56.12898500000001]) // CubicBezierRelative
|> bezierCurve({ control1: [180.79621, -38.046485000000004], control2: [178.95086, -49.019255], to: [179.50181, -44.025395]}, %) // CubicBezierRelative |> bezierCurve(control1 = [180.79621, -38.046485000000004], control2 = [178.95086, -49.019255], end = [179.50181, -44.025395]) // CubicBezierRelative
|> bezierCurve({ control1: [182.48371, -33.108985000000004], control2: [181.35308, -36.41710500000001], to: [181.90996, -34.787735000000005]}, %) // CubicBezierRelative |> bezierCurve(control1 = [182.48371, -33.108985000000004], control2 = [181.35308, -36.41710500000001], end = [181.90996, -34.787735000000005]) // CubicBezierRelative
|> bezierCurve({ control1: [185.48371, -31.108985000000004], control2: [183.47371, -32.44898500000001], to: [184.46371, -31.788985000000004]}, %) // CubicBezierRelative |> bezierCurve(control1 = [185.48371, -31.108985000000004], control2 = [183.47371, -32.44898500000001], end = [184.46371, -31.788985000000004]) // CubicBezierRelative
|> line(endAbsolute = [248.52117, -92.100105]) // MoveRelative |> line(endAbsolute = [248.52117, -92.100105]) // MoveRelative
|> bezierCurve({ control1: [252.52117, -92.100105], control2: [249.84117, -92.100105], to: [251.16117, -92.100105]}, %) // CubicBezierRelative |> bezierCurve(control1 = [252.52117, -92.100105], control2 = [249.84117, -92.100105], end = [251.16117, -92.100105]) // CubicBezierRelative
|> bezierCurve({ control1: [253.52117, -99.100105], control2: [252.85117000000002, -94.410105], to: [253.18117, -96.720105]}, %) // CubicBezierRelative |> bezierCurve(control1 = [253.52117, -99.100105], control2 = [252.85117000000002, -94.410105], end = [253.18117, -96.720105]) // CubicBezierRelative
|> bezierCurve({ control1: [248.89617, -100.8501], control2: [251.99492, -99.677605], to: [250.46867, -100.2551]}, %) // CubicBezierRelative |> bezierCurve(control1 = [248.89617, -100.8501], control2 = [251.99492, -99.677605], end = [250.46867, -100.2551]) // CubicBezierRelative
|> bezierCurve({ control1: [237.52117, -107.1001], control2: [243.22058, -103.02548], to: [243.22058, -103.02548]}, %) // CubicBezierRelative |> bezierCurve(control1 = [237.52117, -107.1001], control2 = [243.22058, -103.02548], end = [243.22058, -103.02548]) // CubicBezierRelative
|> bezierCurve({ control1: [236.52117, -109.1001], control2: [237.19117, -107.7601], to: [236.86117000000002, -108.42009999999999]}, %) // CubicBezierRelative |> bezierCurve(control1 = [236.52117, -109.1001], control2 = [237.19117, -107.7601], end = [236.86117000000002, -108.42009999999999]) // CubicBezierRelative
|> bezierCurve({ control1: [252.52117, -108.1001], control2: [241.80117, -108.7701], to: [247.08117000000001, -108.4401]}, %) // CubicBezierRelative |> bezierCurve(control1 = [252.52117, -108.1001], control2 = [241.80117, -108.7701], end = [247.08117000000001, -108.4401]) // CubicBezierRelative
|> bezierCurve({ control1: [253.52117, -112.1001], control2: [252.85117000000002, -109.42009999999999], to: [253.18117, -110.7401]}, %) // CubicBezierRelative |> bezierCurve(control1 = [253.52117, -112.1001], control2 = [252.85117000000002, -109.42009999999999], end = [253.18117, -110.7401]) // CubicBezierRelative
|> bezierCurve({ control1: [248.52117, -117.1001], control2: [251.87117, -113.7501], to: [250.22117, -115.4001]}, %) // CubicBezierRelative |> bezierCurve(control1 = [248.52117, -117.1001], control2 = [251.87117, -113.7501], end = [250.22117, -115.4001]) // CubicBezierRelative
|> bezierCurve({ control1: [234.52117, -118.1001], control2: [242.52117, -118.1001], to: [242.52117, -118.1001]}, %) // CubicBezierRelative |> bezierCurve(control1 = [234.52117, -118.1001], control2 = [242.52117, -118.1001], end = [242.52117, -118.1001]) // CubicBezierRelative
|> bezierCurve({ control1: [231.52117, -112.1001], control2: [233.53117, -116.1201], to: [232.54117000000002, -114.1401]}, %) // CubicBezierRelative |> bezierCurve(control1 = [231.52117, -112.1001], control2 = [233.53117, -116.1201], end = [232.54117000000002, -114.1401]) // CubicBezierRelative
|> bezierCurve({ control1: [231.52117, -104.1001], control2: [231.52117, -109.4601], to: [231.52117, -106.8201]}, %) // CubicBezierRelative |> bezierCurve(control1 = [231.52117, -104.1001], control2 = [231.52117, -109.4601], end = [231.52117, -106.8201]) // CubicBezierRelative
|> bezierCurve({ control1: [236.52117, -99.100105], control2: [233.17117000000002, -102.45009999999999], to: [234.82117000000002, -100.8001]}, %) // CubicBezierRelative |> bezierCurve(control1 = [236.52117, -99.100105], control2 = [233.17117000000002, -102.45009999999999], end = [234.82117000000002, -100.8001]) // CubicBezierRelative
|> bezierCurve({ control1: [236.52117, -97.100105], control2: [236.52117, -98.440105], to: [236.52117, -97.780105]}, %) // CubicBezierRelative |> bezierCurve(control1 = [236.52117, -97.100105], control2 = [236.52117, -98.440105], end = [236.52117, -97.780105]) // CubicBezierRelative
|> bezierCurve({ control1: [248.52117, -92.100105], control2: [240.49514000000002, -95.372295], to: [244.49777, -93.709465]}, %) // CubicBezierRelative |> bezierCurve(control1 = [248.52117, -92.100105], control2 = [240.49514000000002, -95.372295], end = [244.49777, -93.709465]) // CubicBezierRelative
|> line(endAbsolute = [299.09756, -85.781585]) // MoveRelative |> line(endAbsolute = [299.09756, -85.781585]) // MoveRelative
|> bezierCurve({ control1: [305.09756, -85.781585], control2: [301.07756, -85.781585], to: [303.05755999999997, -85.781585]}, %) // CubicBezierRelative |> bezierCurve(control1 = [305.09756, -85.781585], control2 = [301.07756, -85.781585], end = [303.05755999999997, -85.781585]) // CubicBezierRelative
|> bezierCurve({ control1: [307.09756, -86.781585], control2: [305.75756, -86.111585], to: [306.41756, -86.441585]}, %) // CubicBezierRelative |> bezierCurve(control1 = [307.09756, -86.781585], control2 = [305.75756, -86.111585], end = [306.41756, -86.441585]) // CubicBezierRelative
|> bezierCurve({ control1: [308.09756, -97.781585], control2: [307.48978999999997, -90.442425], to: [307.81822999999997, -94.110415]}, %) // CubicBezierRelative |> bezierCurve(control1 = [308.09756, -97.781585], control2 = [307.48978999999997, -90.442425], end = [307.81822999999997, -94.110415]) // CubicBezierRelative
|> bezierCurve({ control1: [309.09756, -102.78158], control2: [308.42755999999997, -99.43158500000001], to: [308.75756, -101.08158]}, %) // CubicBezierRelative |> bezierCurve(control1 = [309.09756, -102.78158], control2 = [308.42755999999997, -99.43158500000001], end = [308.75756, -101.08158]) // CubicBezierRelative
|> bezierCurve({ control1: [307.09756, -104.78158], control2: [308.43755999999996, -103.44158], to: [307.77756, -104.10158]}, %) // CubicBezierRelative |> bezierCurve(control1 = [307.09756, -104.78158], control2 = [308.43755999999996, -103.44158], end = [307.77756, -104.10158]) // CubicBezierRelative
|> bezierCurve({ control1: [306.09756, -108.78158], control2: [306.76756, -106.10158], to: [306.43755999999996, -107.42158]}, %) // CubicBezierRelative |> bezierCurve(control1 = [306.09756, -108.78158], control2 = [306.76756, -106.10158], end = [306.43755999999996, -107.42158]) // CubicBezierRelative
|> bezierCurve({ control1: [301.09756, -113.78158], control2: [304.43089, -110.44825], to: [302.76423, -112.11491000000001]}, %) // CubicBezierRelative |> bezierCurve(control1 = [301.09756, -113.78158], control2 = [304.43089, -110.44825], end = [302.76423, -112.11491000000001]) // CubicBezierRelative
|> bezierCurve({ control1: [301.09756, -105.78158], control2: [301.09756, -111.14158], to: [301.09756, -108.50158]}, %) // CubicBezierRelative |> bezierCurve(control1 = [301.09756, -105.78158], control2 = [301.09756, -111.14158], end = [301.09756, -108.50158]) // CubicBezierRelative
|> bezierCurve({ control1: [298.09756, -106.78158], control2: [300.10756, -106.11158], to: [299.11755999999997, -106.44158]}, %) // CubicBezierRelative |> bezierCurve(control1 = [298.09756, -106.78158], control2 = [300.10756, -106.11158], end = [299.11755999999997, -106.44158]) // CubicBezierRelative
|> bezierCurve({ control1: [294.09756, -105.78158], control2: [296.77756, -106.45158], to: [295.45756, -106.12158000000001]}, %) // CubicBezierRelative |> bezierCurve(control1 = [294.09756, -105.78158], control2 = [296.77756, -106.45158], end = [295.45756, -106.12158000000001]) // CubicBezierRelative
|> bezierCurve({ control1: [293.09756, -111.78158], control2: [293.76756, -107.76158000000001], to: [293.43755999999996, -109.74158]}, %) // CubicBezierRelative |> bezierCurve(control1 = [293.09756, -111.78158], control2 = [293.76756, -107.76158000000001], end = [293.43755999999996, -109.74158]) // CubicBezierRelative
|> bezierCurve({ control1: [290.09756, -114.78158], control2: [292.10756, -112.77158], to: [291.11755999999997, -113.76158000000001]}, %) // CubicBezierRelative |> bezierCurve(control1 = [290.09756, -114.78158], control2 = [292.10756, -112.77158], end = [291.11755999999997, -113.76158000000001]) // CubicBezierRelative
|> bezierCurve({ control1: [290.09756, -100.78158], control2: [290.09756, -110.16158], to: [290.09756, -105.54158000000001]}, %) // CubicBezierRelative |> bezierCurve(control1 = [290.09756, -100.78158], control2 = [290.09756, -110.16158], end = [290.09756, -105.54158000000001]) // CubicBezierRelative
|> bezierCurve({ control1: [292.09756, -100.78158], control2: [290.75756, -100.78158], to: [291.41756, -100.78158]}, %) // CubicBezierRelative |> bezierCurve(control1 = [292.09756, -100.78158], control2 = [290.75756, -100.78158], end = [291.41756, -100.78158]) // CubicBezierRelative
|> bezierCurve({ control1: [293.34756, -95.531585], control2: [292.51006, -99.049085], to: [292.92256, -97.316585]}, %) // CubicBezierRelative |> bezierCurve(control1 = [293.34756, -95.531585], control2 = [292.51006, -99.049085], end = [292.92256, -97.316585]) // CubicBezierRelative
|> bezierCurve({ control1: [295.09756, -89.781585], control2: [293.92506, -93.63408500000001], to: [294.50255999999996, -91.736585]}, %) // CubicBezierRelative |> bezierCurve(control1 = [295.09756, -89.781585], control2 = [293.92506, -93.63408500000001], end = [294.50255999999996, -91.736585]) // CubicBezierRelative
|> bezierCurve({ control1: [299.09756, -85.781585], control2: [296.41756, -88.46158500000001], to: [297.73756, -87.141585]}, %) // CubicBezierRelative |> bezierCurve(control1 = [299.09756, -85.781585], control2 = [296.41756, -88.46158500000001], end = [297.73756, -87.141585]) // CubicBezierRelative
|> line(endAbsolute = [419.93938, -96.155625]) // MoveRelative |> line(endAbsolute = [419.93938, -96.155625]) // MoveRelative
|> bezierCurve({ control1: [424.75188, -96.218125], control2: [422.32157, -96.186525], to: [422.32157, -96.186525]}, %) // CubicBezierRelative |> bezierCurve(control1 = [424.75188, -96.218125], control2 = [422.32157, -96.186525], end = [422.32157, -96.186525]) // CubicBezierRelative
|> bezierCurve({ control1: [425.75188, -102.21812], control2: [425.08188, -98.198125], to: [425.41188000000005, -100.17812]}, %) // CubicBezierRelative |> bezierCurve(control1 = [425.75188, -102.21812], control2 = [425.08188, -98.198125], end = [425.41188000000005, -100.17812]) // CubicBezierRelative
|> bezierCurve({ control1: [417.75188, -104.21812], control2: [423.11188000000004, -102.87812], to: [420.47188000000006, -103.53811999999999]}, %) // CubicBezierRelative |> bezierCurve(control1 = [417.75188, -104.21812], control2 = [423.11188000000004, -102.87812], end = [420.47188000000006, -103.53811999999999]) // CubicBezierRelative
|> bezierCurve({ control1: [415.75188, -107.21812], control2: [416.76188, -105.70312], to: [416.76188, -105.70312]}, %) // CubicBezierRelative |> bezierCurve(control1 = [415.75188, -107.21812], control2 = [416.76188, -105.70312], end = [416.76188, -105.70312]) // CubicBezierRelative
|> bezierCurve({ control1: [422.75188, -108.21812], control2: [418.06188000000003, -107.54812], to: [420.37188000000003, -107.87812]}, %) // CubicBezierRelative |> bezierCurve(control1 = [422.75188, -108.21812], control2 = [418.06188000000003, -107.54812], end = [420.37188000000003, -107.87812]) // CubicBezierRelative
|> bezierCurve({ control1: [423.75188, -112.21812], control2: [423.08188, -109.53811999999999], to: [423.41188000000005, -110.85812]}, %) // CubicBezierRelative |> bezierCurve(control1 = [423.75188, -112.21812], control2 = [423.08188, -109.53811999999999], end = [423.41188000000005, -110.85812]) // CubicBezierRelative
|> bezierCurve({ control1: [413.75188, -117.21812], control2: [418.80188000000004, -114.69312], to: [418.80188000000004, -114.69312]}, %) // CubicBezierRelative |> bezierCurve(control1 = [413.75188, -117.21812], control2 = [418.80188000000004, -114.69312], end = [418.80188000000004, -114.69312]) // CubicBezierRelative
|> bezierCurve({ control1: [422.75188, -117.21812], control2: [416.72188000000006, -117.21812], to: [419.69188, -117.21812]}, %) // CubicBezierRelative |> bezierCurve(control1 = [422.75188, -117.21812], control2 = [416.72188000000006, -117.21812], end = [419.69188, -117.21812]) // CubicBezierRelative
|> bezierCurve({ control1: [421.75188, -120.21812], control2: [422.42188000000004, -118.20812], to: [422.09188, -119.19812]}, %) // CubicBezierRelative |> bezierCurve(control1 = [421.75188, -120.21812], control2 = [422.42188000000004, -118.20812], end = [422.09188, -119.19812]) // CubicBezierRelative
|> bezierCurve({ control1: [418.75188, -122.21812], control2: [420.76188, -120.87812], to: [419.77188, -121.53811999999999]}, %) // CubicBezierRelative |> bezierCurve(control1 = [418.75188, -122.21812], control2 = [420.76188, -120.87812], end = [419.77188, -121.53811999999999]) // CubicBezierRelative
|> bezierCurve({ control1: [411.75188, -123.21812], control2: [416.44188, -122.54812], to: [414.13188, -122.87812]}, %) // CubicBezierRelative |> bezierCurve(control1 = [411.75188, -123.21812], control2 = [416.44188, -122.54812], end = [414.13188, -122.87812]) // CubicBezierRelative
|> bezierCurve({ control1: [407.75188, -121.21812], control2: [410.43188000000004, -122.55812], to: [409.11188000000004, -121.89812]}, %) // CubicBezierRelative |> bezierCurve(control1 = [407.75188, -121.21812], control2 = [410.43188000000004, -122.55812], end = [409.11188000000004, -121.89812]) // CubicBezierRelative
|> bezierCurve({ control1: [409.18938, -103.59312], control2: [407.53385000000003, -114.968], to: [407.63543000000004, -109.67378]}, %) // CubicBezierRelative |> bezierCurve(control1 = [409.18938, -103.59312], control2 = [407.53385000000003, -114.968], end = [407.63543000000004, -109.67378]) // CubicBezierRelative
|> bezierCurve({ control1: [411.75188, -97.218125], control2: [410.75188, -99.218125], to: [410.75188, -99.218125]}, %) // CubicBezierRelative |> bezierCurve(control1 = [411.75188, -97.218125], control2 = [410.75188, -99.218125], end = [410.75188, -99.218125]) // CubicBezierRelative
|> bezierCurve({ control1: [419.93938, -96.155625], control2: [414.75188, -96.218125], to: [414.75188, -96.218125]}, %) // CubicBezierRelative |> bezierCurve(control1 = [419.93938, -96.155625], control2 = [414.75188, -96.218125], end = [414.75188, -96.218125]) // CubicBezierRelative
|> line(endAbsolute = [198.29461, -92.109945]) // MoveRelative |> line(endAbsolute = [198.29461, -92.109945]) // MoveRelative
|> bezierCurve({ control1: [202.29461, -92.109945], control2: [199.61461, -92.109945], to: [200.93461, -92.109945]}, %) // CubicBezierRelative |> bezierCurve(control1 = [202.29461, -92.109945], control2 = [199.61461, -92.109945], end = [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, -97.109945], control2 = [203.28461000000001, -93.759945], end = [204.27461, -95.409945]) // CubicBezierRelative
|> bezierCurve({ control1: [205.29461, -104.10994], control2: [205.29461, -99.419945], to: [205.29461, -101.72994]}, %) // CubicBezierRelative |> bezierCurve(control1 = [205.29461, -104.10994], control2 = [205.29461, -99.419945], end = [205.29461, -101.72994]) // CubicBezierRelative
|> bezierCurve({ control1: [203.29461, -103.10994], control2: [204.63461, -103.77994], to: [203.97461, -103.44994]}, %) // CubicBezierRelative |> bezierCurve(control1 = [203.29461, -103.10994], control2 = [204.63461, -103.77994], end = [203.97461, -103.44994]) // CubicBezierRelative
|> bezierCurve({ control1: [203.29461, -101.10994], control2: [203.29461, -102.44994], to: [203.29461, -101.78994]}, %) // CubicBezierRelative |> bezierCurve(control1 = [203.29461, -101.10994], control2 = [203.29461, -102.44994], end = [203.29461, -101.78994]) // CubicBezierRelative
|> bezierCurve({ control1: [195.29461, -105.10994], control2: [200.58634, -102.35660999999999], to: [197.91966, -103.69645]}, %) // CubicBezierRelative |> bezierCurve(control1 = [195.29461, -105.10994], control2 = [200.58634, -102.35660999999999], end = [197.91966, -103.69645]) // CubicBezierRelative
|> bezierCurve({ control1: [194.29461, -108.10994], control2: [194.96461, -106.09993999999999], to: [194.63461, -107.08994]}, %) // CubicBezierRelative |> bezierCurve(control1 = [194.29461, -108.10994], control2 = [194.96461, -106.09993999999999], end = [194.63461, -107.08994]) // CubicBezierRelative
|> bezierCurve({ control1: [201.29461, -110.10994], control2: [196.60461, -108.76993999999999], to: [198.91461, -109.42993999999999]}, %) // CubicBezierRelative |> bezierCurve(control1 = [201.29461, -110.10994], control2 = [196.60461, -108.76993999999999], end = [198.91461, -109.42993999999999]) // CubicBezierRelative
|> bezierCurve({ control1: [203.29461, -112.10994], control2: [201.95461, -110.76993999999999], to: [202.61461, -111.42993999999999]}, %) // CubicBezierRelative |> bezierCurve(control1 = [203.29461, -112.10994], control2 = [201.95461, -110.76993999999999], end = [202.61461, -111.42993999999999]) // CubicBezierRelative
|> bezierCurve({ control1: [203.29461, -117.10994], control2: [203.29461, -113.75994], to: [203.29461, -115.40993999999999]}, %) // CubicBezierRelative |> bezierCurve(control1 = [203.29461, -117.10994], control2 = [203.29461, -113.75994], end = [203.29461, -115.40993999999999]) // CubicBezierRelative
|> bezierCurve({ control1: [195.29461, -120.10994], control2: [200.65652, -118.18306], to: [197.98453, -119.17430999999999]}, %) // CubicBezierRelative |> bezierCurve(control1 = [195.29461, -120.10994], control2 = [200.65652, -118.18306], end = [197.98453, -119.17430999999999]) // CubicBezierRelative
|> bezierCurve({ control1: [190.29461, -120.10994], control2: [193.64461, -120.10994], to: [191.99461, -120.10994]}, %) // CubicBezierRelative |> bezierCurve(control1 = [190.29461, -120.10994], control2 = [193.64461, -120.10994], end = [191.99461, -120.10994]) // CubicBezierRelative
|> bezierCurve({ control1: [188.29461, -117.10994], control2: [189.63461, -119.11994], to: [188.97461, -118.12993999999999]}, %) // CubicBezierRelative |> bezierCurve(control1 = [188.29461, -117.10994], control2 = [189.63461, -119.11994], end = [188.97461, -118.12993999999999]) // CubicBezierRelative
|> bezierCurve({ control1: [194.29461, -114.10994], control2: [190.27461, -116.11994], to: [192.25461, -115.12993999999999]}, %) // CubicBezierRelative |> bezierCurve(control1 = [194.29461, -114.10994], control2 = [190.27461, -116.11994], end = [192.25461, -115.12993999999999]) // CubicBezierRelative
|> bezierCurve({ control1: [188.29461, -110.10994], control2: [192.31461000000002, -112.78994], to: [190.33461, -111.46994]}, %) // CubicBezierRelative |> bezierCurve(control1 = [188.29461, -110.10994], control2 = [192.31461000000002, -112.78994], end = [190.33461, -111.46994]) // CubicBezierRelative
|> bezierCurve({ control1: [186.29461, -107.10994], control2: [187.63461, -109.11994], to: [186.97461, -108.12993999999999]}, %) // CubicBezierRelative |> bezierCurve(control1 = [186.29461, -107.10994], control2 = [187.63461, -109.11994], end = [186.97461, -108.12993999999999]) // CubicBezierRelative
|> bezierCurve({ control1: [187.29461, -101.10994], control2: [186.62461000000002, -105.12993999999999], to: [186.95461, -103.14994]}, %) // CubicBezierRelative |> bezierCurve(control1 = [187.29461, -101.10994], control2 = [186.62461000000002, -105.12993999999999], end = [186.95461, -103.14994]) // CubicBezierRelative
|> bezierCurve({ control1: [191.29461, -96.109945], control2: [188.61461, -99.45994499999999], to: [189.93461, -97.809945]}, %) // CubicBezierRelative |> bezierCurve(control1 = [191.29461, -96.109945], control2 = [188.61461, -99.45994499999999], end = [189.93461, -97.809945]) // CubicBezierRelative
|> bezierCurve({ control1: [198.29461, -92.109945], control2: [193.60461, -94.789945], to: [195.91461, -93.469945]}, %) // CubicBezierRelative |> bezierCurve(control1 = [198.29461, -92.109945], control2 = [193.60461, -94.789945], end = [195.91461, -93.469945]) // CubicBezierRelative
|> line(endAbsolute = [0, -0]) // MoveRelative |> line(endAbsolute = [0, -0]) // MoveRelative
|> bezierCurve({ control1: [3, -1], control2: [0.99, -0.33], to: [1.98, -0.66]}, %) // CubicBezierRelative |> bezierCurve(control1 = [3, -1], control2 = [0.99, -0.33], end = [1.98, -0.66]) // CubicBezierRelative
|> bezierCurve({ control1: [3, -4], control2: [3, -1.99], to: [3, -2.98]}, %) // CubicBezierRelative |> bezierCurve(control1 = [3, -4], control2 = [3, -1.99], end = [3, -2.98]) // CubicBezierRelative
|> bezierCurve({ control1: [8, -4], control2: [4.65, -4], to: [6.3, -4]}, %) // CubicBezierRelative |> bezierCurve(control1 = [8, -4], control2 = [4.65, -4], end = [6.3, -4]) // CubicBezierRelative
|> bezierCurve({ control1: [13, -6], control2: [10.475, -4.99], to: [10.475, -4.99]}, %) // CubicBezierRelative |> bezierCurve(control1 = [13, -6], control2 = [10.475, -4.99], end = [10.475, -4.99]) // CubicBezierRelative
|> bezierCurve({ control1: [13, -10], control2: [13, -7.32], to: [13, -8.64]}, %) // CubicBezierRelative |> bezierCurve(control1 = [13, -10], control2 = [13, -7.32], end = [13, -8.64]) // CubicBezierRelative
|> bezierCurve({ control1: [7, -12], control2: [11.02, -10.66], to: [9.04, -11.32]}, %) // CubicBezierRelative |> bezierCurve(control1 = [7, -12], control2 = [11.02, -10.66], end = [9.04, -11.32]) // CubicBezierRelative
|> bezierCurve({ control1: [3, -12], control2: [5.68, -12], to: [4.36, -12] }, %) // CubicBezierAbsolute |> bezierCurve(control1 = [3, -12], control2 = [5.68, -12], end = [4.36, -12] ) // CubicBezierAbsolute
|> bezierCurve({ control1: [0, -19], control2: [2.01, -14.31], to: [1.02, -16.62] }, %) // CubicBezierAbsolute |> bezierCurve(control1 = [0, -19], control2 = [2.01, -14.31], end = [1.02, -16.62] ) // CubicBezierAbsolute
|> bezierCurve({ control1: [-2, -18], control2: [-0.66, -18.67], to: [-1.32, -18.34] }, %) // CubicBezierAbsolute |> bezierCurve(control1 = [-2, -18], control2 = [-0.66, -18.67], end = [-1.32, -18.34] ) // CubicBezierAbsolute
|> bezierCurve({ control1: [-3, -8], control2: [-2.383986, -14.672121], to: [-2.7150643, -11.337819] }, %) // CubicBezierAbsolute |> bezierCurve(control1 = [-3, -8], control2 = [-2.383986, -14.672121], end = [-2.7150643, -11.337819] ) // CubicBezierAbsolute
|> bezierCurve({ control1: [-4, -5], control2: [-3.33, -7.01], to: [-3.66, -6.02] }, %) // CubicBezierAbsolute |> bezierCurve(control1 = [-4, -5], control2 = [-3.33, -7.01], end = [-3.66, -6.02] ) // CubicBezierAbsolute
|> bezierCurve({ control1: [-1, -5], control2: [-3.01, -5], to: [-2.02, -5]}, %) // CubicBezierRelative |> bezierCurve(control1 = [-1, -5], control2 = [-3.01, -5], end = [-2.02, -5]) // CubicBezierRelative
|> bezierCurve({ control1: [0, -0], control2: [-0.6699999999999999, -3.35], to: [-0.33999999999999997, -1.7000000000000002]}, %) // CubicBezierRelative |> bezierCurve(control1 = [0, -0], control2 = [-0.6699999999999999, -3.35], end = [-0.33999999999999997, -1.7000000000000002]) // CubicBezierRelative
|> line(endAbsolute = [0, -0]) // MoveRelative |> line(endAbsolute = [0, -0]) // MoveRelative
|> bezierCurve({ control1: [7, -0], control2: [2.31, -0], to: [4.62, -0]}, %) // CubicBezierRelative |> bezierCurve(control1 = [7, -0], control2 = [2.31, -0], end = [4.62, -0]) // CubicBezierRelative
|> bezierCurve({ control1: [17, -5], control2: [12.3125, -2.3125], to: [12.3125, -2.3125]}, %) // CubicBezierRelative |> bezierCurve(control1 = [17, -5], control2 = [12.3125, -2.3125], end = [12.3125, -2.3125]) // CubicBezierRelative
|> bezierCurve({ control1: [19, -8], control2: [17.99, -6.485], to: [17.99, -6.485]}, %) // CubicBezierRelative |> bezierCurve(control1 = [19, -8], control2 = [17.99, -6.485], end = [17.99, -6.485]) // CubicBezierRelative
|> bezierCurve({ control1: [17, -14], control2: [18.333333, -10], to: [17.666667, -12]}, %) // CubicBezierRelative |> bezierCurve(control1 = [17, -14], control2 = [18.333333, -10], end = [17.666667, -12]) // CubicBezierRelative
|> bezierCurve({ control1: [15, -14], control2: [16.34, -14], to: [15.68, -14]}, %) // CubicBezierRelative |> bezierCurve(control1 = [15, -14], control2 = [16.34, -14], end = [15.68, -14]) // CubicBezierRelative
|> bezierCurve({ control1: [14, -9], control2: [14.67, -12.35], to: [14.34, -10.7] }, %) // CubicBezierAbsolute |> bezierCurve(control1 = [14, -9], control2 = [14.67, -12.35], end = [14.34, -10.7] ) // CubicBezierAbsolute
|> bezierCurve({ control1: [6, -8], control2: [11.36, -8.67], to: [8.72, -8.34] }, %) // CubicBezierAbsolute |> bezierCurve(control1 = [6, -8], control2 = [11.36, -8.67], end = [8.72, -8.34] ) // CubicBezierAbsolute
|> bezierCurve({ control1: [6, -6], control2: [6, -7.34], to: [6, -6.68] }, %) // CubicBezierAbsolute |> bezierCurve(control1 = [6, -6], control2 = [6, -7.34], end = [6, -6.68] ) // CubicBezierAbsolute
|> bezierCurve({ control1: [1, -5], control2: [4.35, -5.67], to: [2.7, -5.34] }, %) // CubicBezierAbsolute |> bezierCurve(control1 = [1, -5], control2 = [4.35, -5.67], end = [2.7, -5.34] ) // CubicBezierAbsolute
|> bezierCurve({ control1: [0, -0], control2: [0.67, -3.35], to: [0.34, -1.7] }, %) // CubicBezierAbsolute |> bezierCurve(control1 = [0, -0], control2 = [0.67, -3.35], end = [0.34, -1.7] ) // CubicBezierAbsolute
|> line(endAbsolute = [-19.467588, -31.053017]) // MoveRelative |> line(endAbsolute = [-19.467588, -31.053017]) // MoveRelative
|> bezierCurve({ control1: [-12.467588, -32.053017], control2: [-17.157588, -31.383017], to: [-14.847587999999998, -31.713017]}, %) // CubicBezierRelative |> bezierCurve(control1 = [-12.467588, -32.053017], control2 = [-17.157588, -31.383017], end = [-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, -34.053017], control2 = [-11.807587999999999, -32.713016999999994], end = [-11.147587999999999, -33.373017]) // CubicBezierRelative
|> bezierCurve({ control1: [-10.467588, -39.053017], control2: [-10.467588, -35.703016999999996], to: [-10.467588, -37.353016999999994]}, %) // CubicBezierRelative |> bezierCurve(control1 = [-10.467588, -39.053017], control2 = [-10.467588, -35.703016999999996], end = [-10.467588, -37.353016999999994]) // CubicBezierRelative
|> bezierCurve({ control1: [-14.467588, -37.053017], control2: [-11.787588, -38.393017], to: [-13.107588, -37.733017]}, %) // CubicBezierRelative |> bezierCurve(control1 = [-14.467588, -37.053017], control2 = [-11.787588, -38.393017], end = [-13.107588, -37.733017]) // CubicBezierRelative
|> bezierCurve({ control1: [-14.467588, -40.053017], control2: [-14.467588, -38.043017], to: [-14.467588, -39.033016999999994]}, %) // CubicBezierRelative |> bezierCurve(control1 = [-14.467588, -40.053017], control2 = [-14.467588, -38.043017], end = [-14.467588, -39.033016999999994]) // CubicBezierRelative
|> bezierCurve({ control1: [-26.467588, -40.053017], control2: [-18.427588, -40.053017], to: [-22.387588, -40.053017]}, %) // CubicBezierRelative |> bezierCurve(control1 = [-26.467588, -40.053017], control2 = [-18.427588, -40.053017], end = [-22.387588, -40.053017]) // CubicBezierRelative
|> bezierCurve({ control1: [-24.467588, -38.053017], control2: [-25.807588, -39.393017], to: [-25.147588, -38.733017]}, %) // CubicBezierRelative |> bezierCurve(control1 = [-24.467588, -38.053017], control2 = [-25.807588, -39.393017], end = [-25.147588, -38.733017]) // CubicBezierRelative
|> bezierCurve({ control1: [-17.467588, -36.053017], control2: [-22.157588, -37.393017], to: [-19.847588, -36.733017]}, %) // CubicBezierRelative |> bezierCurve(control1 = [-17.467588, -36.053017], control2 = [-22.157588, -37.393017], end = [-19.847588, -36.733017]) // CubicBezierRelative
|> bezierCurve({ control1: [-21.467588, -34.053017], control2: [-18.787588, -35.393017], to: [-20.107588, -34.733017]}, %) // CubicBezierRelative |> bezierCurve(control1 = [-21.467588, -34.053017], control2 = [-18.787588, -35.393017], end = [-20.107588, -34.733017]) // CubicBezierRelative
|> bezierCurve({ control1: [-21.467588, -32.053017], control2: [-21.467588, -33.393017], to: [-21.467588, -32.733017]}, %) // CubicBezierRelative |> bezierCurve(control1 = [-21.467588, -32.053017], control2 = [-21.467588, -33.393017], end = [-21.467588, -32.733017]) // CubicBezierRelative
|> bezierCurve({ control1: [-19.467588, -31.053016999999997], control2: [-20.807588, -31.723017], to: [-20.147588, -31.393016999999997]}, %) // CubicBezierRelative |> bezierCurve(control1 = [-19.467588, -31.053016999999997], control2 = [-20.807588, -31.723017], end = [-20.147588, -31.393016999999997]) // CubicBezierRelative
|> line(endAbsolute = [0, -0]) // MoveRelative |> line(endAbsolute = [0, -0]) // MoveRelative
|> bezierCurve({ control1: [16, -3], control2: [5.4494016, -0.77848594], to: [10.65681, -1.7240142]}, %) // CubicBezierRelative |> bezierCurve(control1 = [16, -3], control2 = [5.4494016, -0.77848594], end = [10.65681, -1.7240142]) // CubicBezierRelative
|> bezierCurve({ control1: [18, -4], control2: [16.66, -3.33], to: [17.32, -3.66]}, %) // CubicBezierRelative |> bezierCurve(control1 = [18, -4], control2 = [16.66, -3.33], end = [17.32, -3.66]) // CubicBezierRelative
|> bezierCurve({ control1: [18, -6], control2: [18, -4.66], to: [18, -5.32]}, %) // CubicBezierRelative |> bezierCurve(control1 = [18, -6], control2 = [18, -4.66], end = [18, -5.32]) // CubicBezierRelative
|> bezierCurve({ control1: [14, -8], control2: [16.02, -6.99], to: [16.02, -6.99] }, %) // CubicBezierAbsolute |> bezierCurve(control1 = [14, -8], control2 = [16.02, -6.99], end = [16.02, -6.99] ) // CubicBezierAbsolute
|> bezierCurve({ control1: [7, -7], control2: [11.69, -7.67], to: [9.38, -7.34] }, %) // CubicBezierAbsolute |> bezierCurve(control1 = [7, -7], control2 = [11.69, -7.67], end = [9.38, -7.34] ) // CubicBezierAbsolute
|> bezierCurve({ control1: [1, -3], control2: [5.02, -5.68], to: [3.04, -4.36] }, %) // CubicBezierAbsolute |> bezierCurve(control1 = [1, -3], control2 = [5.02, -5.68], end = [3.04, -4.36] ) // CubicBezierAbsolute
|> bezierCurve({ control1: [1, -8], control2: [1, -4.65], to: [1, -6.3] }, %) // CubicBezierAbsolute |> bezierCurve(control1 = [1, -8], control2 = [1, -4.65], end = [1, -6.3] ) // CubicBezierAbsolute
|> bezierCurve({ control1: [-3, -7], control2: [-0.32, -7.67], to: [-1.64, -7.34] }, %) // CubicBezierAbsolute |> bezierCurve(control1 = [-3, -7], control2 = [-0.32, -7.67], end = [-1.64, -7.34] ) // CubicBezierAbsolute
|> bezierCurve({ control1: [-4, -3], control2: [-3.33, -5.68], to: [-3.66, -4.36] }, %) // CubicBezierAbsolute |> bezierCurve(control1 = [-4, -3], control2 = [-3.33, -5.68], end = [-3.66, -4.36] ) // CubicBezierAbsolute
|> bezierCurve({ control1: [0, -0], control2: [-2.68, -2.01], to: [-1.36, -1.02] }, %) // CubicBezierAbsolute |> bezierCurve(control1 = [0, -0], control2 = [-2.68, -2.01], end = [-1.36, -1.02] ) // CubicBezierAbsolute
|> line(endAbsolute = [0, -0]) // MoveAbsolute |> line(endAbsolute = [0, -0]) // MoveAbsolute
|> bezierCurve({ control1: [7, -0], control2: [2.31, -0], to: [4.62, -0] }, %) // CubicBezierAbsolute |> bezierCurve(control1 = [7, -0], control2 = [2.31, -0], end = [4.62, -0] ) // CubicBezierAbsolute
|> bezierCurve({ control1: [7, -4], control2: [7, -1.32], to: [7, -2.64] }, %) // CubicBezierAbsolute |> bezierCurve(control1 = [7, -4], control2 = [7, -1.32], end = [7, -2.64] ) // CubicBezierAbsolute
|> bezierCurve({ control1: [9, -5], control2: [7.66, -4.33], to: [8.32, -4.66] }, %) // CubicBezierAbsolute |> bezierCurve(control1 = [9, -5], control2 = [7.66, -4.33], end = [8.32, -4.66] ) // CubicBezierAbsolute
|> bezierCurve({ control1: [5, -7], control2: [7.02, -5.99], to: [7.02, -5.99] }, %) // CubicBezierAbsolute |> bezierCurve(control1 = [5, -7], control2 = [7.02, -5.99], end = [7.02, -5.99] ) // CubicBezierAbsolute
|> bezierCurve({ control1: [8, -8], control2: [5.99, -7.33], to: [6.98, -7.66] }, %) // CubicBezierAbsolute |> bezierCurve(control1 = [8, -8], control2 = [5.99, -7.33], end = [6.98, -7.66] ) // CubicBezierAbsolute
|> bezierCurve({ control1: [5, -12], control2: [7.01, -9.32], to: [6.02, -10.64] }, %) // CubicBezierAbsolute |> bezierCurve(control1 = [5, -12], control2 = [7.01, -9.32], end = [6.02, -10.64] ) // CubicBezierAbsolute
|> bezierCurve({ control1: [6, -18], control2: [5.33, -13.98], to: [5.66, -15.96] }, %) // CubicBezierAbsolute |> bezierCurve(control1 = [6, -18], control2 = [5.33, -13.98], end = [5.66, -15.96] ) // CubicBezierAbsolute
|> bezierCurve({ control1: [2, -21], control2: [4.68, -18.99], to: [3.36, -19.98] }, %) // CubicBezierAbsolute |> bezierCurve(control1 = [2, -21], control2 = [4.68, -18.99], end = [3.36, -19.98] ) // CubicBezierAbsolute
|> bezierCurve({ control1: [0, -21], control2: [1.34, -21], to: [0.68, -21] }, %) // CubicBezierAbsolute |> bezierCurve(control1 = [0, -21], control2 = [1.34, -21], end = [0.68, -21] ) // CubicBezierAbsolute
|> bezierCurve({ control1: [2, -3], control2: [-0.18556857, -14.319532], to: [0.34378347, -9.6248661] }, %) // CubicBezierAbsolute |> bezierCurve(control1 = [2, -3], control2 = [-0.18556857, -14.319532], end = [0.34378347, -9.6248661] ) // CubicBezierAbsolute
|> bezierCurve({ control1: [0, -3], control2: [1.34, -3], to: [0.68, -3] }, %) // CubicBezierAbsolute |> bezierCurve(control1 = [0, -3], control2 = [1.34, -3], end = [0.68, -3] ) // CubicBezierAbsolute
|> bezierCurve({ control1: [0, -0], control2: [0, -2.01], to: [0, -1.02] }, %) // CubicBezierAbsolute |> bezierCurve(control1 = [0, -0], control2 = [0, -2.01], end = [0, -1.02] ) // CubicBezierAbsolute
|> line(endAbsolute = [0, -0]) // MoveRelative |> line(endAbsolute = [0, -0]) // MoveRelative
|> bezierCurve({ control1: [1, -4], control2: [0.33, -1.32], to: [0.66, -2.64]}, %) // CubicBezierRelative |> bezierCurve(control1 = [1, -4], control2 = [0.33, -1.32], end = [0.66, -2.64]) // CubicBezierRelative
|> bezierCurve({ control1: [9, -4], control2: [3.64, -4], to: [6.28, -4]}, %) // CubicBezierRelative |> bezierCurve(control1 = [9, -4], control2 = [3.64, -4], end = [6.28, -4]) // CubicBezierRelative
|> bezierCurve({ control1: [12, -1], control2: [9.99, -3.01], to: [10.98, -2.02]}, %) // CubicBezierRelative |> bezierCurve(control1 = [12, -1], control2 = [9.99, -3.01], end = [10.98, -2.02]) // CubicBezierRelative
|> bezierCurve({ control1: [12, -3], control2: [12, -1.6600000000000001], to: [12, -2.3200000000000003]}, %) // CubicBezierRelative |> bezierCurve(control1 = [12, -3], control2 = [12, -1.6600000000000001], end = [12, -2.3200000000000003]) // CubicBezierRelative
|> bezierCurve({ control1: [15, -4], control2: [12.99, -3.33], to: [13.98, -3.66]}, %) // CubicBezierRelative |> bezierCurve(control1 = [15, -4], control2 = [12.99, -3.33], end = [13.98, -3.66]) // CubicBezierRelative
|> bezierCurve({ control1: [12, -6], control2: [14.01, -4.66], to: [13.02, -5.32] }, %) // CubicBezierAbsolute |> bezierCurve(control1 = [12, -6], control2 = [14.01, -4.66], end = [13.02, -5.32] ) // CubicBezierAbsolute
|> bezierCurve({ control1: [2, -7], control2: [8.6740937, -6.4007116], to: [5.3398344, -6.7397532] }, %) // CubicBezierAbsolute |> bezierCurve(control1 = [2, -7], control2 = [8.6740937, -6.4007116], end = [5.3398344, -6.7397532] ) // CubicBezierAbsolute
|> bezierCurve({ control1: [9, -11], control2: [5.465, -8.98], to: [5.465, -8.98] }, %) // CubicBezierAbsolute |> bezierCurve(control1 = [9, -11], control2 = [5.465, -8.98], end = [5.465, -8.98] ) // CubicBezierAbsolute
|> bezierCurve({ control1: [9, -12], control2: [9, -11.33], to: [9, -11.66] }, %) // CubicBezierAbsolute |> bezierCurve(control1 = [9, -12], control2 = [9, -11.33], end = [9, -11.66] ) // CubicBezierAbsolute
|> bezierCurve({ control1: [1, -11], control2: [6.36, -11.67], to: [3.72, -11.34] }, %) // CubicBezierAbsolute |> bezierCurve(control1 = [1, -11], control2 = [6.36, -11.67], end = [3.72, -11.34] ) // CubicBezierAbsolute
|> bezierCurve({ control1: [-2, -9], control2: [0.01, -10.34], to: [-0.98, -9.68] }, %) // CubicBezierAbsolute |> bezierCurve(control1 = [-2, -9], control2 = [0.01, -10.34], end = [-0.98, -9.68] ) // CubicBezierAbsolute
|> bezierCurve({ control1: [-2, -4], control2: [-2, -7.35], to: [-2, -5.7] }, %) // CubicBezierAbsolute |> bezierCurve(control1 = [-2, -4], control2 = [-2, -7.35], end = [-2, -5.7] ) // CubicBezierAbsolute
|> bezierCurve({ control1: [-4, -3], control2: [-2.66, -3.67], to: [-3.32, -3.34] }, %) // CubicBezierAbsolute |> bezierCurve(control1 = [-4, -3], control2 = [-2.66, -3.67], end = [-3.32, -3.34] ) // CubicBezierAbsolute
|> bezierCurve({ control1: [0, -2], control2: [-2.68, -2.67], to: [-1.36, -2.34] }, %) // CubicBezierAbsolute |> bezierCurve(control1 = [0, -2], control2 = [-2.68, -2.67], end = [-1.36, -2.34] ) // CubicBezierAbsolute
|> bezierCurve({ control1: [0, -0], control2: [0, -1.34], to: [0, -0.68] }, %) // CubicBezierAbsolute |> bezierCurve(control1 = [0, -0], control2 = [0, -1.34], end = [0, -0.68] ) // CubicBezierAbsolute
|> close() |> close()

View File

@ -653,40 +653,6 @@ impl Args {
FromArgs::from_args(self, 0) FromArgs::from_args(self, 0)
} }
pub(crate) fn get_data_and_sketch_and_tag<'a, T>(
&'a self,
exec_state: &mut ExecState,
) -> Result<(T, Sketch, Option<TagNode>), KclError>
where
T: FromKclValue<'a> + Sized,
{
let data: T = FromArgs::from_args(self, 0)?;
let Some(arg1) = self.args.get(1) else {
return Err(KclError::Semantic(KclErrorDetails {
message: "Expected a sketch for second argument".to_owned(),
source_ranges: vec![self.source_range],
}));
};
let sarg = arg1
.value
.coerce(&RuntimeType::Primitive(PrimitiveType::Sketch), exec_state)
.map_err(|_| {
KclError::Type(KclErrorDetails {
message: format!(
"Expected a sketch for second argument, found {}",
arg1.value.human_friendly_type()
),
source_ranges: vec![self.source_range],
})
})?;
let sketch = match sarg {
KclValue::Sketch { value } => *value,
_ => unreachable!(),
};
let tag: Option<TagNode> = FromArgs::from_args(self, 2)?;
Ok((data, sketch, tag))
}
pub(crate) fn get_data_and_sketch_surface(&self) -> Result<([TyF64; 2], SketchSurface, Option<TagNode>), KclError> { pub(crate) fn get_data_and_sketch_surface(&self) -> Result<([TyF64; 2], SketchSurface, Option<TagNode>), KclError> {
FromArgs::from_args(self, 0) FromArgs::from_args(self, 0)
} }
@ -1095,16 +1061,6 @@ impl<'a> FromKclValue<'a> for kittycad_modeling_cmds::coord::Direction {
} }
} }
impl<'a> FromKclValue<'a> for super::sketch::BezierData {
fn from_kcl_val(arg: &'a KclValue) -> Option<Self> {
let obj = arg.as_object()?;
let_field_of!(obj, to);
let_field_of!(obj, control1);
let_field_of!(obj, control2);
Some(Self { to, control1, control2 })
}
}
impl<'a> FromKclValue<'a> for FaceTag { impl<'a> FromKclValue<'a> for FaceTag {
fn from_kcl_val(arg: &'a KclValue) -> Option<Self> { fn from_kcl_val(arg: &'a KclValue) -> Option<Self> {
let case1 = || match arg.as_str() { let case1 = || match arg.as_str() {

View File

@ -71,11 +71,11 @@ pub async fn extrude(exec_state: &mut ExecState, args: Args) -> Result<KclValue,
/// ) /// )
/// |> line(end = [5, 0]) /// |> line(end = [5, 0])
/// |> line(end = [0, 10]) /// |> line(end = [0, 10])
/// |> bezierCurve({ /// |> bezierCurve(
/// control1 = [-10, 0], /// control1 = [-10, 0],
/// control2 = [2, 10], /// control2 = [2, 10],
/// to = [-5, 10], /// end = [-5, 10],
/// }, %) /// )
/// |> line(end = [-5, -2]) /// |> line(end = [-5, -2])
/// |> close() /// |> close()
/// |> extrude(length = 10) /// |> extrude(length = 10)
@ -91,11 +91,11 @@ pub async fn extrude(exec_state: &mut ExecState, args: Args) -> Result<KclValue,
/// ) /// )
/// |> line(end = [10, 0]) /// |> line(end = [10, 0])
/// |> line(end = [5, 0]) /// |> line(end = [5, 0])
/// |> bezierCurve({ /// |> bezierCurve(
/// control1 = [-3, 0], /// control1 = [-3, 0],
/// control2 = [2, 10], /// control2 = [2, 10],
/// to = [-5, 10], /// end = [-5, 10],
/// }, %) /// )
/// |> line(end = [-4, 10]) /// |> line(end = [-4, 10])
/// |> line(end = [-5, -2]) /// |> line(end = [-5, -2])
/// |> close() /// |> close()
@ -113,11 +113,11 @@ pub async fn extrude(exec_state: &mut ExecState, args: Args) -> Result<KclValue,
/// ) /// )
/// |> line(end = [10, 0]) /// |> line(end = [10, 0])
/// |> line(end = [5, 0]) /// |> line(end = [5, 0])
/// |> bezierCurve({ /// |> bezierCurve(
/// control1 = [-3, 0], /// control1 = [-3, 0],
/// control2 = [2, 10], /// control2 = [2, 10],
/// to = [-5, 10], /// end = [-5, 10],
/// }, %) /// )
/// |> line(end = [-4, 10]) /// |> line(end = [-4, 10])
/// |> line(end = [-5, -2]) /// |> line(end = [-5, -2])
/// |> close() /// |> close()
@ -135,11 +135,11 @@ pub async fn extrude(exec_state: &mut ExecState, args: Args) -> Result<KclValue,
/// ) /// )
/// |> line(end = [10, 0]) /// |> line(end = [10, 0])
/// |> line(end = [5, 0]) /// |> line(end = [5, 0])
/// |> bezierCurve({ /// |> bezierCurve(
/// control1 = [-3, 0], /// control1 = [-3, 0],
/// control2 = [2, 10], /// control2 = [2, 10],
/// to = [-5, 10], /// end = [-5, 10],
/// }, %) /// )
/// |> line(end = [-4, 10]) /// |> line(end = [-4, 10])
/// |> line(end = [-5, -2]) /// |> line(end = [-5, -2])
/// |> close() /// |> close()

View File

@ -198,26 +198,6 @@ async fn inner_involute_circular(
end.x += from.x; end.x += from.x;
end.y += from.y; end.y += from.y;
// let path_json = path_to_json();
// let end = args
// .send_modeling_cmd(
// exec_state.next_uuid(),
// ModelingCmd::EngineUtilEvaluatePath(mcmd::EngineUtilEvaluatePath { path_json, t: 1.0 }),
// )
// .await?;
// let end = match end {
// kittycad_modeling_cmds::websocket::OkWebSocketResponseData::Modeling {
// modeling_response: OkModelingCmdResponse::EngineUtilEvaluatePath(eval_path),
// } => eval_path.pos,
// other => {
// return Err(KclError::Engine(KclErrorDetails {
// source_ranges: vec![args.source_range],
// message: format!("Expected EngineUtilEvaluatePath response but found {other:?}"),
// }))
// }
// };
let current_path = Path::ToPoint { let current_path = Path::ToPoint {
base: BasePath { base: BasePath {
from: from.into(), from: from.into(),
@ -2189,24 +2169,16 @@ async fn inner_tangential_arc_to_point(
Ok(new_sketch) Ok(new_sketch)
} }
/// Data to draw a bezier curve.
#[derive(Debug, Clone, Serialize, PartialEq, ts_rs::TS, JsonSchema)]
#[ts(export)]
#[serde(rename_all = "camelCase")]
pub struct BezierData {
/// The to point.
pub to: [TyF64; 2],
/// The first control point.
pub control1: [TyF64; 2],
/// The second control point.
pub control2: [TyF64; 2],
}
/// Draw a bezier curve. /// Draw a bezier curve.
pub async fn bezier_curve(exec_state: &mut ExecState, args: Args) -> Result<KclValue, KclError> { pub async fn bezier_curve(exec_state: &mut ExecState, args: Args) -> Result<KclValue, KclError> {
let (data, sketch, tag): (BezierData, Sketch, Option<TagNode>) = args.get_data_and_sketch_and_tag(exec_state)?; let sketch =
args.get_unlabeled_kw_arg_typed("sketch", &RuntimeType::Primitive(PrimitiveType::Sketch), exec_state)?;
let end: [TyF64; 2] = args.get_kw_arg_typed("end", &RuntimeType::point2d(), exec_state)?;
let control1: [TyF64; 2] = args.get_kw_arg_typed("control1", &RuntimeType::point2d(), exec_state)?;
let control2: [TyF64; 2] = args.get_kw_arg_typed("control2", &RuntimeType::point2d(), exec_state)?;
let tag = args.get_kw_arg_opt("tag")?;
let new_sketch = inner_bezier_curve(data, sketch, tag, exec_state, args).await?; let new_sketch = inner_bezier_curve(sketch, control1, control2, end, tag, exec_state, args).await?;
Ok(KclValue::Sketch { Ok(KclValue::Sketch {
value: Box::new(new_sketch), value: Box::new(new_sketch),
}) })
@ -2220,11 +2192,11 @@ pub async fn bezier_curve(exec_state: &mut ExecState, args: Args) -> Result<KclV
/// exampleSketch = startSketchOn(XZ) /// exampleSketch = startSketchOn(XZ)
/// |> startProfileAt([0, 0], %) /// |> startProfileAt([0, 0], %)
/// |> line(end = [0, 10]) /// |> line(end = [0, 10])
/// |> bezierCurve({ /// |> bezierCurve(
/// to = [10, 10],
/// control1 = [5, 0], /// control1 = [5, 0],
/// control2 = [5, 10] /// control2 = [5, 10],
/// }, %) /// end = [10, 10],
/// )
/// |> line(endAbsolute = [10, 0]) /// |> line(endAbsolute = [10, 0])
/// |> close() /// |> close()
/// ///
@ -2232,10 +2204,21 @@ pub async fn bezier_curve(exec_state: &mut ExecState, args: Args) -> Result<KclV
/// ``` /// ```
#[stdlib { #[stdlib {
name = "bezierCurve", name = "bezierCurve",
keywords = true,
unlabeled_first = true,
args = {
sketch = { docs = "Which sketch should this path be added to?"},
end = { docs = "How far away (along the X and Y axes) should this line go?" },
control1 = { docs = "First control point for the cubic" },
control2 = { docs = "Second control point for the cubic" },
tag = { docs = "Create a new tag which refers to this line"},
}
}] }]
async fn inner_bezier_curve( async fn inner_bezier_curve(
data: BezierData,
sketch: Sketch, sketch: Sketch,
control1: [TyF64; 2],
control2: [TyF64; 2],
end: [TyF64; 2],
tag: Option<TagNode>, tag: Option<TagNode>,
exec_state: &mut ExecState, exec_state: &mut ExecState,
args: Args, args: Args,
@ -2243,8 +2226,8 @@ async fn inner_bezier_curve(
let from = sketch.current_pen_position()?; let from = sketch.current_pen_position()?;
let relative = true; let relative = true;
let delta = data.to.clone(); let delta = end.clone();
let to = [from.x + data.to[0].n, from.y + data.to[1].n]; let to = [from.x + end[0].n, from.y + end[1].n];
let id = exec_state.next_uuid(); let id = exec_state.next_uuid();
@ -2253,12 +2236,8 @@ async fn inner_bezier_curve(
ModelingCmd::from(mcmd::ExtendPath { ModelingCmd::from(mcmd::ExtendPath {
path: sketch.id.into(), path: sketch.id.into(),
segment: PathSegment::Bezier { segment: PathSegment::Bezier {
control1: KPoint2d::from(untype_point(data.control1).0) control1: KPoint2d::from(untype_point(control1).0).with_z(0.0).map(LengthUnit),
.with_z(0.0) control2: KPoint2d::from(untype_point(control2).0).with_z(0.0).map(LengthUnit),
.map(LengthUnit),
control2: KPoint2d::from(untype_point(data.control2).0)
.with_z(0.0)
.map(LengthUnit),
end: KPoint2d::from(untype_point(delta).0).with_z(0.0).map(LengthUnit), end: KPoint2d::from(untype_point(delta).0).with_z(0.0).map(LengthUnit),
relative, relative,
}, },

View File

@ -86,65 +86,65 @@ flowchart LR
subgraph path179 [Path] subgraph path179 [Path]
179["Path<br>[1675, 1721, 5]"] 179["Path<br>[1675, 1721, 5]"]
180["Segment<br>[1727, 1779, 5]"] 180["Segment<br>[1727, 1779, 5]"]
181["Segment<br>[1785, 1890, 5]"] 181["Segment<br>[1785, 1858, 5]"]
182["Segment<br>[1896, 1918, 5]"] 182["Segment<br>[1864, 1886, 5]"]
183["Segment<br>[1924, 1980, 5]"] 183["Segment<br>[1892, 1948, 5]"]
184["Segment<br>[1986, 1993, 5]"] 184["Segment<br>[1954, 1961, 5]"]
185[Solid2d] 185[Solid2d]
end end
subgraph path195 [Path] subgraph path195 [Path]
195["Path<br>[2125, 2171, 5]"] 195["Path<br>[2093, 2139, 5]"]
196["Segment<br>[2177, 2229, 5]"] 196["Segment<br>[2145, 2197, 5]"]
197["Segment<br>[2235, 2342, 5]"] 197["Segment<br>[2203, 2278, 5]"]
198["Segment<br>[2348, 2385, 5]"] 198["Segment<br>[2284, 2321, 5]"]
199["Segment<br>[2391, 2447, 5]"] 199["Segment<br>[2327, 2383, 5]"]
200["Segment<br>[2453, 2460, 5]"] 200["Segment<br>[2389, 2396, 5]"]
201[Solid2d] 201[Solid2d]
end end
subgraph path212 [Path] subgraph path212 [Path]
212["Path<br>[2941, 2988, 5]"] 212["Path<br>[2877, 2924, 5]"]
213["Segment<br>[2996, 3336, 5]"] 213["Segment<br>[2932, 3269, 5]"]
214["Segment<br>[3344, 3376, 5]"] 214["Segment<br>[3277, 3309, 5]"]
215["Segment<br>[3384, 3728, 5]"] 215["Segment<br>[3317, 3658, 5]"]
216["Segment<br>[3736, 3792, 5]"] 216["Segment<br>[3666, 3722, 5]"]
217["Segment<br>[3800, 3807, 5]"] 217["Segment<br>[3730, 3737, 5]"]
218[Solid2d] 218[Solid2d]
end end
subgraph path235 [Path] subgraph path235 [Path]
235["Path<br>[2941, 2988, 5]"] 235["Path<br>[2877, 2924, 5]"]
236["Segment<br>[2996, 3336, 5]"] 236["Segment<br>[2932, 3269, 5]"]
237["Segment<br>[3344, 3376, 5]"] 237["Segment<br>[3277, 3309, 5]"]
238["Segment<br>[3384, 3728, 5]"] 238["Segment<br>[3317, 3658, 5]"]
239["Segment<br>[3736, 3792, 5]"] 239["Segment<br>[3666, 3722, 5]"]
240["Segment<br>[3800, 3807, 5]"] 240["Segment<br>[3730, 3737, 5]"]
241[Solid2d] 241[Solid2d]
end end
subgraph path258 [Path] subgraph path258 [Path]
258["Path<br>[4335, 4430, 5]"] 258["Path<br>[4265, 4360, 5]"]
259["Segment<br>[4436, 4469, 5]"] 259["Segment<br>[4366, 4399, 5]"]
260["Segment<br>[4475, 4526, 5]"] 260["Segment<br>[4405, 4456, 5]"]
261["Segment<br>[4532, 4565, 5]"] 261["Segment<br>[4462, 4495, 5]"]
262["Segment<br>[4571, 4621, 5]"] 262["Segment<br>[4501, 4551, 5]"]
263["Segment<br>[4627, 4668, 5]"] 263["Segment<br>[4557, 4598, 5]"]
264["Segment<br>[4674, 4723, 5]"] 264["Segment<br>[4604, 4653, 5]"]
265["Segment<br>[4729, 4762, 5]"] 265["Segment<br>[4659, 4692, 5]"]
266["Segment<br>[4768, 4802, 5]"] 266["Segment<br>[4698, 4732, 5]"]
267["Segment<br>[4808, 4842, 5]"] 267["Segment<br>[4738, 4772, 5]"]
268["Segment<br>[4848, 4900, 5]"] 268["Segment<br>[4778, 4830, 5]"]
269["Segment<br>[4906, 4940, 5]"] 269["Segment<br>[4836, 4870, 5]"]
270["Segment<br>[4946, 5022, 5]"] 270["Segment<br>[4876, 4952, 5]"]
271["Segment<br>[5028, 5061, 5]"] 271["Segment<br>[4958, 4991, 5]"]
272["Segment<br>[5067, 5143, 5]"] 272["Segment<br>[4997, 5073, 5]"]
273["Segment<br>[5149, 5183, 5]"] 273["Segment<br>[5079, 5113, 5]"]
274["Segment<br>[5189, 5263, 5]"] 274["Segment<br>[5119, 5193, 5]"]
275["Segment<br>[5269, 5303, 5]"] 275["Segment<br>[5199, 5233, 5]"]
276["Segment<br>[5309, 5360, 5]"] 276["Segment<br>[5239, 5290, 5]"]
277["Segment<br>[5366, 5428, 5]"] 277["Segment<br>[5296, 5358, 5]"]
278["Segment<br>[5434, 5485, 5]"] 278["Segment<br>[5364, 5415, 5]"]
279["Segment<br>[5491, 5525, 5]"] 279["Segment<br>[5421, 5455, 5]"]
280["Segment<br>[5531, 5564, 5]"] 280["Segment<br>[5461, 5494, 5]"]
281["Segment<br>[5570, 5603, 5]"] 281["Segment<br>[5500, 5533, 5]"]
282["Segment<br>[5609, 5616, 5]"] 282["Segment<br>[5539, 5546, 5]"]
283[Solid2d] 283[Solid2d]
end end
subgraph path334 [Path] subgraph path334 [Path]
@ -324,7 +324,7 @@ flowchart LR
176["Sweep Extrusion<br>[1464, 1498, 5]"] 176["Sweep Extrusion<br>[1464, 1498, 5]"]
177["Sweep Extrusion<br>[1464, 1498, 5]"] 177["Sweep Extrusion<br>[1464, 1498, 5]"]
178["Plane<br>[1652, 1669, 5]"] 178["Plane<br>[1652, 1669, 5]"]
186["Sweep Revolve<br>[1999, 2016, 5]"] 186["Sweep Revolve<br>[1967, 1984, 5]"]
187[Wall] 187[Wall]
188[Wall] 188[Wall]
189[Wall] 189[Wall]
@ -332,8 +332,8 @@ flowchart LR
191["SweepEdge Adjacent"] 191["SweepEdge Adjacent"]
192["SweepEdge Adjacent"] 192["SweepEdge Adjacent"]
193["SweepEdge Adjacent"] 193["SweepEdge Adjacent"]
194["Plane<br>[2102, 2119, 5]"] 194["Plane<br>[2070, 2087, 5]"]
202["Sweep Revolve<br>[2466, 2483, 5]"] 202["Sweep Revolve<br>[2402, 2419, 5]"]
203[Wall] 203[Wall]
204[Wall] 204[Wall]
205[Wall] 205[Wall]
@ -342,8 +342,8 @@ flowchart LR
208["SweepEdge Adjacent"] 208["SweepEdge Adjacent"]
209["SweepEdge Adjacent"] 209["SweepEdge Adjacent"]
210["SweepEdge Adjacent"] 210["SweepEdge Adjacent"]
211["Plane<br>[2910, 2933, 5]"] 211["Plane<br>[2846, 2869, 5]"]
219["Sweep Extrusion<br>[3855, 3901, 5]"] 219["Sweep Extrusion<br>[3785, 3831, 5]"]
220[Wall] 220[Wall]
221[Wall] 221[Wall]
222[Wall] 222[Wall]
@ -358,8 +358,8 @@ flowchart LR
231["SweepEdge Adjacent"] 231["SweepEdge Adjacent"]
232["SweepEdge Opposite"] 232["SweepEdge Opposite"]
233["SweepEdge Adjacent"] 233["SweepEdge Adjacent"]
234["Plane<br>[2910, 2933, 5]"] 234["Plane<br>[2846, 2869, 5]"]
242["Sweep Extrusion<br>[3855, 3901, 5]"] 242["Sweep Extrusion<br>[3785, 3831, 5]"]
243[Wall] 243[Wall]
244[Wall] 244[Wall]
245[Wall] 245[Wall]
@ -374,8 +374,8 @@ flowchart LR
254["SweepEdge Adjacent"] 254["SweepEdge Adjacent"]
255["SweepEdge Opposite"] 255["SweepEdge Opposite"]
256["SweepEdge Adjacent"] 256["SweepEdge Adjacent"]
257["Plane<br>[4312, 4329, 5]"] 257["Plane<br>[4242, 4259, 5]"]
284["Sweep Revolve<br>[5622, 5639, 5]"] 284["Sweep Revolve<br>[5552, 5569, 5]"]
285[Wall] 285[Wall]
286[Wall] 286[Wall]
287[Wall] 287[Wall]

View File

@ -1252,8 +1252,8 @@ description: Operations executed car-wheel-assembly.kcl
"type": "FunctionCall", "type": "FunctionCall",
"name": "spoke", "name": "spoke",
"functionSourceRange": [ "functionSourceRange": [
2636, 2572,
4181, 4111,
5 5
], ],
"unlabeledArg": null, "unlabeledArg": null,
@ -1643,8 +1643,8 @@ description: Operations executed car-wheel-assembly.kcl
"type": "FunctionCall", "type": "FunctionCall",
"name": "spoke", "name": "spoke",
"functionSourceRange": [ "functionSourceRange": [
2636, 2572,
4181, 4111,
5 5
], ],
"unlabeledArg": null, "unlabeledArg": null,

View File

@ -98,26 +98,26 @@ flowchart LR
216["Segment<br>[4881, 4900, 0]"] 216["Segment<br>[4881, 4900, 0]"]
217["Segment<br>[4906, 4925, 0]"] 217["Segment<br>[4906, 4925, 0]"]
218["Segment<br>[4931, 4956, 0]"] 218["Segment<br>[4931, 4956, 0]"]
219["Segment<br>[4962, 5102, 0]"] 219["Segment<br>[4962, 5070, 0]"]
220["Segment<br>[5108, 5164, 0]"] 220["Segment<br>[5076, 5132, 0]"]
221["Segment<br>[5170, 5177, 0]"] 221["Segment<br>[5138, 5145, 0]"]
222[Solid2d] 222[Solid2d]
end end
subgraph path239 [Path] subgraph path239 [Path]
239["Path<br>[5307, 5336, 0]"] 239["Path<br>[5275, 5304, 0]"]
240["Segment<br>[5342, 5363, 0]"] 240["Segment<br>[5310, 5331, 0]"]
241["Segment<br>[5369, 5409, 0]"] 241["Segment<br>[5337, 5377, 0]"]
242["Segment<br>[5415, 5455, 0]"] 242["Segment<br>[5383, 5423, 0]"]
243["Segment<br>[5461, 5502, 0]"] 243["Segment<br>[5429, 5470, 0]"]
244["Segment<br>[5508, 5530, 0]"] 244["Segment<br>[5476, 5498, 0]"]
245["Segment<br>[5536, 5557, 0]"] 245["Segment<br>[5504, 5525, 0]"]
246["Segment<br>[5563, 5588, 0]"] 246["Segment<br>[5531, 5556, 0]"]
247["Segment<br>[5594, 5634, 0]"] 247["Segment<br>[5562, 5602, 0]"]
248["Segment<br>[5640, 5681, 0]"] 248["Segment<br>[5608, 5649, 0]"]
249["Segment<br>[5687, 5728, 0]"] 249["Segment<br>[5655, 5696, 0]"]
250["Segment<br>[5734, 5755, 0]"] 250["Segment<br>[5702, 5723, 0]"]
251["Segment<br>[5761, 5817, 0]"] 251["Segment<br>[5729, 5785, 0]"]
252["Segment<br>[5823, 5830, 0]"] 252["Segment<br>[5791, 5798, 0]"]
253[Solid2d] 253[Solid2d]
end end
1["Plane<br>[242, 259, 0]"] 1["Plane<br>[242, 259, 0]"]
@ -263,7 +263,7 @@ flowchart LR
210["SweepEdge Opposite"] 210["SweepEdge Opposite"]
211["SweepEdge Adjacent"] 211["SweepEdge Adjacent"]
212["Plane<br>[4737, 4754, 0]"] 212["Plane<br>[4737, 4754, 0]"]
223["Sweep Revolve<br>[5183, 5200, 0]"] 223["Sweep Revolve<br>[5151, 5168, 0]"]
224[Wall] 224[Wall]
225[Wall] 225[Wall]
226[Wall] 226[Wall]
@ -278,8 +278,8 @@ flowchart LR
235["SweepEdge Adjacent"] 235["SweepEdge Adjacent"]
236["SweepEdge Adjacent"] 236["SweepEdge Adjacent"]
237["SweepEdge Adjacent"] 237["SweepEdge Adjacent"]
238["Plane<br>[5255, 5300, 0]"] 238["Plane<br>[5223, 5268, 0]"]
254["Sweep Extrusion<br>[5844, 5889, 0]"] 254["Sweep Extrusion<br>[5812, 5857, 0]"]
255[Wall] 255[Wall]
256[Wall] 256[Wall]
257[Wall] 257[Wall]
@ -323,7 +323,7 @@ flowchart LR
295["StartSketchOnPlane<br>[3552, 3597, 0]"] 295["StartSketchOnPlane<br>[3552, 3597, 0]"]
296["StartSketchOnFace<br>[3814, 3851, 0]"] 296["StartSketchOnFace<br>[3814, 3851, 0]"]
297["StartSketchOnFace<br>[4130, 4167, 0]"] 297["StartSketchOnFace<br>[4130, 4167, 0]"]
298["StartSketchOnPlane<br>[5241, 5301, 0]"] 298["StartSketchOnPlane<br>[5209, 5269, 0]"]
1 --- 2 1 --- 2
2 --- 3 2 --- 3
2 --- 4 2 --- 4

View File

@ -7717,180 +7717,143 @@ description: Result of parsing french-press.kcl
{ {
"arguments": [ "arguments": [
{ {
"commentStart": 0, "type": "LabeledArg",
"end": 0, "label": {
"properties": [ "commentStart": 0,
{ "end": 0,
"commentStart": 0, "name": "control1",
"end": 0, "start": 0,
"key": { "type": "Identifier"
"commentStart": 0, },
"end": 0, "arg": {
"name": "to", "commentStart": 0,
"start": 0, "elements": [
"type": "Identifier" {
}, "argument": {
"start": 0, "commentStart": 0,
"type": "ObjectProperty", "end": 0,
"value": { "raw": "0.3",
"commentStart": 0, "start": 0,
"elements": [ "type": "Literal",
{ "type": "Literal",
"commentStart": 0, "value": {
"end": 0, "value": 0.3,
"left": { "suffix": "None"
"commentStart": 0,
"end": 0,
"left": {
"argument": {
"abs_path": false,
"commentStart": 0,
"end": 0,
"name": {
"commentStart": 0,
"end": 0,
"name": "carafeDiameter",
"start": 0,
"type": "Identifier"
},
"path": [],
"start": 0,
"type": "Name",
"type": "Name"
},
"commentStart": 0,
"end": 0,
"operator": "-",
"start": 0,
"type": "UnaryExpression",
"type": "UnaryExpression"
},
"operator": "/",
"right": {
"commentStart": 0,
"end": 0,
"raw": "2",
"start": 0,
"type": "Literal",
"type": "Literal",
"value": {
"value": 2.0,
"suffix": "None"
}
},
"start": 0,
"type": "BinaryExpression",
"type": "BinaryExpression"
},
"operator": "-",
"right": {
"commentStart": 0,
"end": 0,
"raw": "0.1",
"start": 0,
"type": "Literal",
"type": "Literal",
"value": {
"value": 0.1,
"suffix": "None"
}
},
"start": 0,
"type": "BinaryExpression",
"type": "BinaryExpression"
},
{
"commentStart": 0,
"end": 0,
"raw": "1",
"start": 0,
"type": "Literal",
"type": "Literal",
"value": {
"value": 1.0,
"suffix": "None"
}
} }
], },
"end": 0,
"start": 0,
"type": "ArrayExpression",
"type": "ArrayExpression"
}
},
{
"commentStart": 0,
"end": 0,
"key": {
"commentStart": 0, "commentStart": 0,
"end": 0, "end": 0,
"name": "control1", "operator": "-",
"start": 0, "start": 0,
"type": "Identifier" "type": "UnaryExpression",
"type": "UnaryExpression"
}, },
"start": 0, {
"type": "ObjectProperty",
"value": {
"commentStart": 0, "commentStart": 0,
"elements": [ "end": 0,
{ "raw": "0",
"start": 0,
"type": "Literal",
"type": "Literal",
"value": {
"value": 0.0,
"suffix": "None"
}
}
],
"end": 0,
"start": 0,
"type": "ArrayExpression",
"type": "ArrayExpression"
}
},
{
"type": "LabeledArg",
"label": {
"commentStart": 0,
"end": 0,
"name": "control2",
"start": 0,
"type": "Identifier"
},
"arg": {
"commentStart": 0,
"elements": [
{
"commentStart": 0,
"end": 0,
"left": {
"abs_path": false,
"commentStart": 0,
"end": 0,
"name": {
"commentStart": 0,
"end": 0,
"name": "carafeDiameter",
"start": 0,
"type": "Identifier"
},
"path": [],
"start": 0,
"type": "Name",
"type": "Name"
},
"operator": "/",
"right": {
"commentStart": 0,
"end": 0,
"raw": "10",
"start": 0,
"type": "Literal",
"type": "Literal",
"value": {
"value": 10.0,
"suffix": "None"
}
},
"start": 0,
"type": "BinaryExpression",
"type": "BinaryExpression"
},
{
"commentStart": 0,
"end": 0,
"raw": "1",
"start": 0,
"type": "Literal",
"type": "Literal",
"value": {
"value": 1.0,
"suffix": "None"
}
}
],
"end": 0,
"start": 0,
"type": "ArrayExpression",
"type": "ArrayExpression"
}
},
{
"type": "LabeledArg",
"label": {
"commentStart": 0,
"end": 0,
"name": "end",
"start": 0,
"type": "Identifier"
},
"arg": {
"commentStart": 0,
"elements": [
{
"commentStart": 0,
"end": 0,
"left": {
"commentStart": 0,
"end": 0,
"left": {
"argument": { "argument": {
"commentStart": 0,
"end": 0,
"raw": "0.3",
"start": 0,
"type": "Literal",
"type": "Literal",
"value": {
"value": 0.3,
"suffix": "None"
}
},
"commentStart": 0,
"end": 0,
"operator": "-",
"start": 0,
"type": "UnaryExpression",
"type": "UnaryExpression"
},
{
"commentStart": 0,
"end": 0,
"raw": "0",
"start": 0,
"type": "Literal",
"type": "Literal",
"value": {
"value": 0.0,
"suffix": "None"
}
}
],
"end": 0,
"start": 0,
"type": "ArrayExpression",
"type": "ArrayExpression"
}
},
{
"commentStart": 0,
"end": 0,
"key": {
"commentStart": 0,
"end": 0,
"name": "control2",
"start": 0,
"type": "Identifier"
},
"start": 0,
"type": "ObjectProperty",
"value": {
"commentStart": 0,
"elements": [
{
"commentStart": 0,
"end": 0,
"left": {
"abs_path": false, "abs_path": false,
"commentStart": 0, "commentStart": 0,
"end": 0, "end": 0,
@ -7906,53 +7869,65 @@ description: Result of parsing french-press.kcl
"type": "Name", "type": "Name",
"type": "Name" "type": "Name"
}, },
"operator": "/",
"right": {
"commentStart": 0,
"end": 0,
"raw": "10",
"start": 0,
"type": "Literal",
"type": "Literal",
"value": {
"value": 10.0,
"suffix": "None"
}
},
"start": 0,
"type": "BinaryExpression",
"type": "BinaryExpression"
},
{
"commentStart": 0, "commentStart": 0,
"end": 0, "end": 0,
"raw": "1", "operator": "-",
"start": 0,
"type": "UnaryExpression",
"type": "UnaryExpression"
},
"operator": "/",
"right": {
"commentStart": 0,
"end": 0,
"raw": "2",
"start": 0, "start": 0,
"type": "Literal", "type": "Literal",
"type": "Literal", "type": "Literal",
"value": { "value": {
"value": 1.0, "value": 2.0,
"suffix": "None" "suffix": "None"
} }
},
"start": 0,
"type": "BinaryExpression",
"type": "BinaryExpression"
},
"operator": "-",
"right": {
"commentStart": 0,
"end": 0,
"raw": "0.1",
"start": 0,
"type": "Literal",
"type": "Literal",
"value": {
"value": 0.1,
"suffix": "None"
} }
], },
"end": 0,
"start": 0, "start": 0,
"type": "ArrayExpression", "type": "BinaryExpression",
"type": "ArrayExpression" "type": "BinaryExpression"
},
{
"commentStart": 0,
"end": 0,
"raw": "1",
"start": 0,
"type": "Literal",
"type": "Literal",
"value": {
"value": 1.0,
"suffix": "None"
}
} }
} ],
], "end": 0,
"start": 0, "start": 0,
"type": "ObjectExpression", "type": "ArrayExpression",
"type": "ObjectExpression" "type": "ArrayExpression"
}, }
{
"commentStart": 0,
"end": 0,
"start": 0,
"type": "PipeSubstitution",
"type": "PipeSubstitution"
} }
], ],
"callee": { "callee": {
@ -7973,8 +7948,9 @@ description: Result of parsing french-press.kcl
"commentStart": 0, "commentStart": 0,
"end": 0, "end": 0,
"start": 0, "start": 0,
"type": "CallExpression", "type": "CallExpressionKw",
"type": "CallExpression" "type": "CallExpressionKw",
"unlabeled": null
}, },
{ {
"arguments": [ "arguments": [