1787 lines
		
	
	
		
			58 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
			
		
		
	
	
			1787 lines
		
	
	
		
			58 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
---
 | 
						|
source: kcl-lib/src/simulation_tests.rs
 | 
						|
description: Result of parsing sketch-on-chamfer-two-times.kcl
 | 
						|
---
 | 
						|
{
 | 
						|
  "Ok": {
 | 
						|
    "body": [
 | 
						|
      {
 | 
						|
        "declaration": {
 | 
						|
          "end": 446,
 | 
						|
          "id": {
 | 
						|
            "end": 9,
 | 
						|
            "name": "sketch001",
 | 
						|
            "start": 0,
 | 
						|
            "type": "Identifier"
 | 
						|
          },
 | 
						|
          "init": {
 | 
						|
            "body": [
 | 
						|
              {
 | 
						|
                "arguments": [
 | 
						|
                  {
 | 
						|
                    "end": 30,
 | 
						|
                    "raw": "'XZ'",
 | 
						|
                    "start": 26,
 | 
						|
                    "type": "Literal",
 | 
						|
                    "type": "Literal",
 | 
						|
                    "value": "XZ"
 | 
						|
                  }
 | 
						|
                ],
 | 
						|
                "callee": {
 | 
						|
                  "end": 25,
 | 
						|
                  "name": "startSketchOn",
 | 
						|
                  "start": 12,
 | 
						|
                  "type": "Identifier"
 | 
						|
                },
 | 
						|
                "end": 31,
 | 
						|
                "start": 12,
 | 
						|
                "type": "CallExpression",
 | 
						|
                "type": "CallExpression"
 | 
						|
              },
 | 
						|
              {
 | 
						|
                "arguments": [
 | 
						|
                  {
 | 
						|
                    "elements": [
 | 
						|
                      {
 | 
						|
                        "end": 57,
 | 
						|
                        "raw": "75.8",
 | 
						|
                        "start": 53,
 | 
						|
                        "type": "Literal",
 | 
						|
                        "type": "Literal",
 | 
						|
                        "value": {
 | 
						|
                          "value": 75.8,
 | 
						|
                          "suffix": "None"
 | 
						|
                        }
 | 
						|
                      },
 | 
						|
                      {
 | 
						|
                        "end": 64,
 | 
						|
                        "raw": "317.2",
 | 
						|
                        "start": 59,
 | 
						|
                        "type": "Literal",
 | 
						|
                        "type": "Literal",
 | 
						|
                        "value": {
 | 
						|
                          "value": 317.2,
 | 
						|
                          "suffix": "None"
 | 
						|
                        }
 | 
						|
                      }
 | 
						|
                    ],
 | 
						|
                    "end": 65,
 | 
						|
                    "start": 52,
 | 
						|
                    "type": "ArrayExpression",
 | 
						|
                    "type": "ArrayExpression"
 | 
						|
                  },
 | 
						|
                  {
 | 
						|
                    "end": 68,
 | 
						|
                    "start": 67,
 | 
						|
                    "type": "PipeSubstitution",
 | 
						|
                    "type": "PipeSubstitution"
 | 
						|
                  }
 | 
						|
                ],
 | 
						|
                "callee": {
 | 
						|
                  "end": 51,
 | 
						|
                  "name": "startProfileAt",
 | 
						|
                  "start": 37,
 | 
						|
                  "type": "Identifier"
 | 
						|
                },
 | 
						|
                "end": 69,
 | 
						|
                "start": 37,
 | 
						|
                "type": "CallExpression",
 | 
						|
                "type": "CallExpression"
 | 
						|
              },
 | 
						|
              {
 | 
						|
                "arguments": [
 | 
						|
                  {
 | 
						|
                    "type": "LabeledArg",
 | 
						|
                    "label": {
 | 
						|
                      "end": 121,
 | 
						|
                      "name": "angle",
 | 
						|
                      "start": 116,
 | 
						|
                      "type": "Identifier"
 | 
						|
                    },
 | 
						|
                    "arg": {
 | 
						|
                      "end": 125,
 | 
						|
                      "raw": "0",
 | 
						|
                      "start": 124,
 | 
						|
                      "type": "Literal",
 | 
						|
                      "type": "Literal",
 | 
						|
                      "value": {
 | 
						|
                        "value": 0.0,
 | 
						|
                        "suffix": "None"
 | 
						|
                      }
 | 
						|
                    }
 | 
						|
                  },
 | 
						|
                  {
 | 
						|
                    "type": "LabeledArg",
 | 
						|
                    "label": {
 | 
						|
                      "end": 133,
 | 
						|
                      "name": "length",
 | 
						|
                      "start": 127,
 | 
						|
                      "type": "Identifier"
 | 
						|
                    },
 | 
						|
                    "arg": {
 | 
						|
                      "end": 142,
 | 
						|
                      "raw": "268.43",
 | 
						|
                      "start": 136,
 | 
						|
                      "type": "Literal",
 | 
						|
                      "type": "Literal",
 | 
						|
                      "value": {
 | 
						|
                        "value": 268.43,
 | 
						|
                        "suffix": "None"
 | 
						|
                      }
 | 
						|
                    }
 | 
						|
                  },
 | 
						|
                  {
 | 
						|
                    "type": "LabeledArg",
 | 
						|
                    "label": {
 | 
						|
                      "end": 147,
 | 
						|
                      "name": "tag",
 | 
						|
                      "start": 144,
 | 
						|
                      "type": "Identifier"
 | 
						|
                    },
 | 
						|
                    "arg": {
 | 
						|
                      "end": 171,
 | 
						|
                      "start": 150,
 | 
						|
                      "type": "TagDeclarator",
 | 
						|
                      "type": "TagDeclarator",
 | 
						|
                      "value": "rectangleSegmentA001"
 | 
						|
                    }
 | 
						|
                  }
 | 
						|
                ],
 | 
						|
                "callee": {
 | 
						|
                  "end": 115,
 | 
						|
                  "name": "angledLine",
 | 
						|
                  "start": 105,
 | 
						|
                  "type": "Identifier"
 | 
						|
                },
 | 
						|
                "end": 172,
 | 
						|
                "start": 105,
 | 
						|
                "type": "CallExpressionKw",
 | 
						|
                "type": "CallExpressionKw",
 | 
						|
                "unlabeled": null
 | 
						|
              },
 | 
						|
              {
 | 
						|
                "arguments": [
 | 
						|
                  {
 | 
						|
                    "type": "LabeledArg",
 | 
						|
                    "label": {
 | 
						|
                      "end": 194,
 | 
						|
                      "name": "angle",
 | 
						|
                      "start": 189,
 | 
						|
                      "type": "Identifier"
 | 
						|
                    },
 | 
						|
                    "arg": {
 | 
						|
                      "end": 230,
 | 
						|
                      "left": {
 | 
						|
                        "arguments": [
 | 
						|
                          {
 | 
						|
                            "end": 224,
 | 
						|
                            "name": "rectangleSegmentA001",
 | 
						|
                            "start": 204,
 | 
						|
                            "type": "Identifier",
 | 
						|
                            "type": "Identifier"
 | 
						|
                          }
 | 
						|
                        ],
 | 
						|
                        "callee": {
 | 
						|
                          "end": 203,
 | 
						|
                          "name": "segAng",
 | 
						|
                          "start": 197,
 | 
						|
                          "type": "Identifier"
 | 
						|
                        },
 | 
						|
                        "end": 225,
 | 
						|
                        "start": 197,
 | 
						|
                        "type": "CallExpression",
 | 
						|
                        "type": "CallExpression"
 | 
						|
                      },
 | 
						|
                      "operator": "-",
 | 
						|
                      "right": {
 | 
						|
                        "end": 230,
 | 
						|
                        "raw": "90",
 | 
						|
                        "start": 228,
 | 
						|
                        "type": "Literal",
 | 
						|
                        "type": "Literal",
 | 
						|
                        "value": {
 | 
						|
                          "value": 90.0,
 | 
						|
                          "suffix": "None"
 | 
						|
                        }
 | 
						|
                      },
 | 
						|
                      "start": 197,
 | 
						|
                      "type": "BinaryExpression",
 | 
						|
                      "type": "BinaryExpression"
 | 
						|
                    }
 | 
						|
                  },
 | 
						|
                  {
 | 
						|
                    "type": "LabeledArg",
 | 
						|
                    "label": {
 | 
						|
                      "end": 238,
 | 
						|
                      "name": "length",
 | 
						|
                      "start": 232,
 | 
						|
                      "type": "Identifier"
 | 
						|
                    },
 | 
						|
                    "arg": {
 | 
						|
                      "end": 247,
 | 
						|
                      "raw": "217.26",
 | 
						|
                      "start": 241,
 | 
						|
                      "type": "Literal",
 | 
						|
                      "type": "Literal",
 | 
						|
                      "value": {
 | 
						|
                        "value": 217.26,
 | 
						|
                        "suffix": "None"
 | 
						|
                      }
 | 
						|
                    }
 | 
						|
                  },
 | 
						|
                  {
 | 
						|
                    "type": "LabeledArg",
 | 
						|
                    "label": {
 | 
						|
                      "end": 252,
 | 
						|
                      "name": "tag",
 | 
						|
                      "start": 249,
 | 
						|
                      "type": "Identifier"
 | 
						|
                    },
 | 
						|
                    "arg": {
 | 
						|
                      "end": 261,
 | 
						|
                      "start": 255,
 | 
						|
                      "type": "TagDeclarator",
 | 
						|
                      "type": "TagDeclarator",
 | 
						|
                      "value": "seg01"
 | 
						|
                    }
 | 
						|
                  }
 | 
						|
                ],
 | 
						|
                "callee": {
 | 
						|
                  "end": 188,
 | 
						|
                  "name": "angledLine",
 | 
						|
                  "start": 178,
 | 
						|
                  "type": "Identifier"
 | 
						|
                },
 | 
						|
                "end": 262,
 | 
						|
                "start": 178,
 | 
						|
                "type": "CallExpressionKw",
 | 
						|
                "type": "CallExpressionKw",
 | 
						|
                "unlabeled": null
 | 
						|
              },
 | 
						|
              {
 | 
						|
                "arguments": [
 | 
						|
                  {
 | 
						|
                    "type": "LabeledArg",
 | 
						|
                    "label": {
 | 
						|
                      "end": 284,
 | 
						|
                      "name": "angle",
 | 
						|
                      "start": 279,
 | 
						|
                      "type": "Identifier"
 | 
						|
                    },
 | 
						|
                    "arg": {
 | 
						|
                      "arguments": [
 | 
						|
                        {
 | 
						|
                          "end": 314,
 | 
						|
                          "name": "rectangleSegmentA001",
 | 
						|
                          "start": 294,
 | 
						|
                          "type": "Identifier",
 | 
						|
                          "type": "Identifier"
 | 
						|
                        }
 | 
						|
                      ],
 | 
						|
                      "callee": {
 | 
						|
                        "end": 293,
 | 
						|
                        "name": "segAng",
 | 
						|
                        "start": 287,
 | 
						|
                        "type": "Identifier"
 | 
						|
                      },
 | 
						|
                      "end": 315,
 | 
						|
                      "start": 287,
 | 
						|
                      "type": "CallExpression",
 | 
						|
                      "type": "CallExpression"
 | 
						|
                    }
 | 
						|
                  },
 | 
						|
                  {
 | 
						|
                    "type": "LabeledArg",
 | 
						|
                    "label": {
 | 
						|
                      "end": 323,
 | 
						|
                      "name": "length",
 | 
						|
                      "start": 317,
 | 
						|
                      "type": "Identifier"
 | 
						|
                    },
 | 
						|
                    "arg": {
 | 
						|
                      "argument": {
 | 
						|
                        "arguments": [
 | 
						|
                          {
 | 
						|
                            "end": 354,
 | 
						|
                            "name": "rectangleSegmentA001",
 | 
						|
                            "start": 334,
 | 
						|
                            "type": "Identifier",
 | 
						|
                            "type": "Identifier"
 | 
						|
                          }
 | 
						|
                        ],
 | 
						|
                        "callee": {
 | 
						|
                          "end": 333,
 | 
						|
                          "name": "segLen",
 | 
						|
                          "start": 327,
 | 
						|
                          "type": "Identifier"
 | 
						|
                        },
 | 
						|
                        "end": 355,
 | 
						|
                        "start": 327,
 | 
						|
                        "type": "CallExpression",
 | 
						|
                        "type": "CallExpression"
 | 
						|
                      },
 | 
						|
                      "end": 355,
 | 
						|
                      "operator": "-",
 | 
						|
                      "start": 326,
 | 
						|
                      "type": "UnaryExpression",
 | 
						|
                      "type": "UnaryExpression"
 | 
						|
                    }
 | 
						|
                  }
 | 
						|
                ],
 | 
						|
                "callee": {
 | 
						|
                  "end": 278,
 | 
						|
                  "name": "angledLine",
 | 
						|
                  "start": 268,
 | 
						|
                  "type": "Identifier"
 | 
						|
                },
 | 
						|
                "end": 356,
 | 
						|
                "start": 268,
 | 
						|
                "type": "CallExpressionKw",
 | 
						|
                "type": "CallExpressionKw",
 | 
						|
                "unlabeled": null
 | 
						|
              },
 | 
						|
              {
 | 
						|
                "arguments": [
 | 
						|
                  {
 | 
						|
                    "type": "LabeledArg",
 | 
						|
                    "label": {
 | 
						|
                      "end": 378,
 | 
						|
                      "name": "endAbsolute",
 | 
						|
                      "start": 367,
 | 
						|
                      "type": "Identifier"
 | 
						|
                    },
 | 
						|
                    "arg": {
 | 
						|
                      "elements": [
 | 
						|
                        {
 | 
						|
                          "arguments": [
 | 
						|
                            {
 | 
						|
                              "end": 397,
 | 
						|
                              "start": 396,
 | 
						|
                              "type": "PipeSubstitution",
 | 
						|
                              "type": "PipeSubstitution"
 | 
						|
                            }
 | 
						|
                          ],
 | 
						|
                          "callee": {
 | 
						|
                            "end": 395,
 | 
						|
                            "name": "profileStartX",
 | 
						|
                            "start": 382,
 | 
						|
                            "type": "Identifier"
 | 
						|
                          },
 | 
						|
                          "end": 398,
 | 
						|
                          "start": 382,
 | 
						|
                          "type": "CallExpression",
 | 
						|
                          "type": "CallExpression"
 | 
						|
                        },
 | 
						|
                        {
 | 
						|
                          "arguments": [
 | 
						|
                            {
 | 
						|
                              "end": 415,
 | 
						|
                              "start": 414,
 | 
						|
                              "type": "PipeSubstitution",
 | 
						|
                              "type": "PipeSubstitution"
 | 
						|
                            }
 | 
						|
                          ],
 | 
						|
                          "callee": {
 | 
						|
                            "end": 413,
 | 
						|
                            "name": "profileStartY",
 | 
						|
                            "start": 400,
 | 
						|
                            "type": "Identifier"
 | 
						|
                          },
 | 
						|
                          "end": 416,
 | 
						|
                          "start": 400,
 | 
						|
                          "type": "CallExpression",
 | 
						|
                          "type": "CallExpression"
 | 
						|
                        }
 | 
						|
                      ],
 | 
						|
                      "end": 417,
 | 
						|
                      "start": 381,
 | 
						|
                      "type": "ArrayExpression",
 | 
						|
                      "type": "ArrayExpression"
 | 
						|
                    }
 | 
						|
                  },
 | 
						|
                  {
 | 
						|
                    "type": "LabeledArg",
 | 
						|
                    "label": {
 | 
						|
                      "end": 422,
 | 
						|
                      "name": "tag",
 | 
						|
                      "start": 419,
 | 
						|
                      "type": "Identifier"
 | 
						|
                    },
 | 
						|
                    "arg": {
 | 
						|
                      "end": 431,
 | 
						|
                      "start": 425,
 | 
						|
                      "type": "TagDeclarator",
 | 
						|
                      "type": "TagDeclarator",
 | 
						|
                      "value": "seg02"
 | 
						|
                    }
 | 
						|
                  }
 | 
						|
                ],
 | 
						|
                "callee": {
 | 
						|
                  "end": 366,
 | 
						|
                  "name": "line",
 | 
						|
                  "start": 362,
 | 
						|
                  "type": "Identifier"
 | 
						|
                },
 | 
						|
                "end": 432,
 | 
						|
                "start": 362,
 | 
						|
                "type": "CallExpressionKw",
 | 
						|
                "type": "CallExpressionKw",
 | 
						|
                "unlabeled": null
 | 
						|
              },
 | 
						|
              {
 | 
						|
                "arguments": [
 | 
						|
                  {
 | 
						|
                    "end": 445,
 | 
						|
                    "start": 444,
 | 
						|
                    "type": "PipeSubstitution",
 | 
						|
                    "type": "PipeSubstitution"
 | 
						|
                  }
 | 
						|
                ],
 | 
						|
                "callee": {
 | 
						|
                  "end": 443,
 | 
						|
                  "name": "close",
 | 
						|
                  "start": 438,
 | 
						|
                  "type": "Identifier"
 | 
						|
                },
 | 
						|
                "end": 446,
 | 
						|
                "start": 438,
 | 
						|
                "type": "CallExpression",
 | 
						|
                "type": "CallExpression"
 | 
						|
              }
 | 
						|
            ],
 | 
						|
            "end": 446,
 | 
						|
            "nonCodeMeta": {
 | 
						|
              "nonCodeNodes": {
 | 
						|
                "1": [
 | 
						|
                  {
 | 
						|
                    "end": 99,
 | 
						|
                    "start": 69,
 | 
						|
                    "type": "NonCodeNode",
 | 
						|
                    "value": {
 | 
						|
                      "type": "inlineComment",
 | 
						|
                      "value": "[$startCapTag, $EndCapTag]",
 | 
						|
                      "style": "line"
 | 
						|
                    }
 | 
						|
                  }
 | 
						|
                ]
 | 
						|
              },
 | 
						|
              "startNodes": []
 | 
						|
            },
 | 
						|
            "start": 12,
 | 
						|
            "type": "PipeExpression",
 | 
						|
            "type": "PipeExpression"
 | 
						|
          },
 | 
						|
          "start": 0,
 | 
						|
          "type": "VariableDeclarator"
 | 
						|
        },
 | 
						|
        "end": 446,
 | 
						|
        "kind": "const",
 | 
						|
        "start": 0,
 | 
						|
        "type": "VariableDeclaration",
 | 
						|
        "type": "VariableDeclaration"
 | 
						|
      },
 | 
						|
      {
 | 
						|
        "declaration": {
 | 
						|
          "end": 662,
 | 
						|
          "id": {
 | 
						|
            "end": 457,
 | 
						|
            "name": "extrude001",
 | 
						|
            "start": 447,
 | 
						|
            "type": "Identifier"
 | 
						|
          },
 | 
						|
          "init": {
 | 
						|
            "body": [
 | 
						|
              {
 | 
						|
                "arguments": [
 | 
						|
                  {
 | 
						|
                    "type": "LabeledArg",
 | 
						|
                    "label": {
 | 
						|
                      "end": 485,
 | 
						|
                      "name": "length",
 | 
						|
                      "start": 479,
 | 
						|
                      "type": "Identifier"
 | 
						|
                    },
 | 
						|
                    "arg": {
 | 
						|
                      "end": 491,
 | 
						|
                      "raw": "100",
 | 
						|
                      "start": 488,
 | 
						|
                      "type": "Literal",
 | 
						|
                      "type": "Literal",
 | 
						|
                      "value": {
 | 
						|
                        "value": 100.0,
 | 
						|
                        "suffix": "None"
 | 
						|
                      }
 | 
						|
                    }
 | 
						|
                  }
 | 
						|
                ],
 | 
						|
                "callee": {
 | 
						|
                  "end": 467,
 | 
						|
                  "name": "extrude",
 | 
						|
                  "start": 460,
 | 
						|
                  "type": "Identifier"
 | 
						|
                },
 | 
						|
                "end": 492,
 | 
						|
                "start": 460,
 | 
						|
                "type": "CallExpressionKw",
 | 
						|
                "type": "CallExpressionKw",
 | 
						|
                "unlabeled": {
 | 
						|
                  "end": 477,
 | 
						|
                  "name": "sketch001",
 | 
						|
                  "start": 468,
 | 
						|
                  "type": "Identifier",
 | 
						|
                  "type": "Identifier"
 | 
						|
                }
 | 
						|
              },
 | 
						|
              {
 | 
						|
                "arguments": [
 | 
						|
                  {
 | 
						|
                    "type": "LabeledArg",
 | 
						|
                    "label": {
 | 
						|
                      "end": 511,
 | 
						|
                      "name": "radius",
 | 
						|
                      "start": 505,
 | 
						|
                      "type": "Identifier"
 | 
						|
                    },
 | 
						|
                    "arg": {
 | 
						|
                      "end": 516,
 | 
						|
                      "raw": "20",
 | 
						|
                      "start": 514,
 | 
						|
                      "type": "Literal",
 | 
						|
                      "type": "Literal",
 | 
						|
                      "value": {
 | 
						|
                        "value": 20.0,
 | 
						|
                        "suffix": "None"
 | 
						|
                      }
 | 
						|
                    }
 | 
						|
                  },
 | 
						|
                  {
 | 
						|
                    "type": "LabeledArg",
 | 
						|
                    "label": {
 | 
						|
                      "end": 522,
 | 
						|
                      "name": "tags",
 | 
						|
                      "start": 518,
 | 
						|
                      "type": "Identifier"
 | 
						|
                    },
 | 
						|
                    "arg": {
 | 
						|
                      "elements": [
 | 
						|
                        {
 | 
						|
                          "end": 531,
 | 
						|
                          "name": "seg01",
 | 
						|
                          "start": 526,
 | 
						|
                          "type": "Identifier",
 | 
						|
                          "type": "Identifier"
 | 
						|
                        }
 | 
						|
                      ],
 | 
						|
                      "end": 532,
 | 
						|
                      "start": 525,
 | 
						|
                      "type": "ArrayExpression",
 | 
						|
                      "type": "ArrayExpression"
 | 
						|
                    }
 | 
						|
                  }
 | 
						|
                ],
 | 
						|
                "callee": {
 | 
						|
                  "end": 504,
 | 
						|
                  "name": "fillet",
 | 
						|
                  "start": 498,
 | 
						|
                  "type": "Identifier"
 | 
						|
                },
 | 
						|
                "end": 533,
 | 
						|
                "start": 498,
 | 
						|
                "type": "CallExpressionKw",
 | 
						|
                "type": "CallExpressionKw",
 | 
						|
                "unlabeled": null
 | 
						|
              },
 | 
						|
              {
 | 
						|
                "arguments": [
 | 
						|
                  {
 | 
						|
                    "type": "LabeledArg",
 | 
						|
                    "label": {
 | 
						|
                      "end": 553,
 | 
						|
                      "name": "length",
 | 
						|
                      "start": 547,
 | 
						|
                      "type": "Identifier"
 | 
						|
                    },
 | 
						|
                    "arg": {
 | 
						|
                      "end": 558,
 | 
						|
                      "raw": "50",
 | 
						|
                      "start": 556,
 | 
						|
                      "type": "Literal",
 | 
						|
                      "type": "Literal",
 | 
						|
                      "value": {
 | 
						|
                        "value": 50.0,
 | 
						|
                        "suffix": "None"
 | 
						|
                      }
 | 
						|
                    }
 | 
						|
                  },
 | 
						|
                  {
 | 
						|
                    "type": "LabeledArg",
 | 
						|
                    "label": {
 | 
						|
                      "end": 564,
 | 
						|
                      "name": "tags",
 | 
						|
                      "start": 560,
 | 
						|
                      "type": "Identifier"
 | 
						|
                    },
 | 
						|
                    "arg": {
 | 
						|
                      "elements": [
 | 
						|
                        {
 | 
						|
                          "end": 573,
 | 
						|
                          "name": "seg02",
 | 
						|
                          "start": 568,
 | 
						|
                          "type": "Identifier",
 | 
						|
                          "type": "Identifier"
 | 
						|
                        }
 | 
						|
                      ],
 | 
						|
                      "end": 574,
 | 
						|
                      "start": 567,
 | 
						|
                      "type": "ArrayExpression",
 | 
						|
                      "type": "ArrayExpression"
 | 
						|
                    }
 | 
						|
                  },
 | 
						|
                  {
 | 
						|
                    "type": "LabeledArg",
 | 
						|
                    "label": {
 | 
						|
                      "end": 579,
 | 
						|
                      "name": "tag",
 | 
						|
                      "start": 576,
 | 
						|
                      "type": "Identifier"
 | 
						|
                    },
 | 
						|
                    "arg": {
 | 
						|
                      "end": 588,
 | 
						|
                      "start": 582,
 | 
						|
                      "type": "TagDeclarator",
 | 
						|
                      "type": "TagDeclarator",
 | 
						|
                      "value": "seg04"
 | 
						|
                    }
 | 
						|
                  }
 | 
						|
                ],
 | 
						|
                "callee": {
 | 
						|
                  "end": 546,
 | 
						|
                  "name": "chamfer",
 | 
						|
                  "start": 539,
 | 
						|
                  "type": "Identifier"
 | 
						|
                },
 | 
						|
                "end": 589,
 | 
						|
                "start": 539,
 | 
						|
                "type": "CallExpressionKw",
 | 
						|
                "type": "CallExpressionKw",
 | 
						|
                "unlabeled": null
 | 
						|
              },
 | 
						|
              {
 | 
						|
                "arguments": [
 | 
						|
                  {
 | 
						|
                    "type": "LabeledArg",
 | 
						|
                    "label": {
 | 
						|
                      "end": 609,
 | 
						|
                      "name": "length",
 | 
						|
                      "start": 603,
 | 
						|
                      "type": "Identifier"
 | 
						|
                    },
 | 
						|
                    "arg": {
 | 
						|
                      "end": 614,
 | 
						|
                      "raw": "50",
 | 
						|
                      "start": 612,
 | 
						|
                      "type": "Literal",
 | 
						|
                      "type": "Literal",
 | 
						|
                      "value": {
 | 
						|
                        "value": 50.0,
 | 
						|
                        "suffix": "None"
 | 
						|
                      }
 | 
						|
                    }
 | 
						|
                  },
 | 
						|
                  {
 | 
						|
                    "type": "LabeledArg",
 | 
						|
                    "label": {
 | 
						|
                      "end": 620,
 | 
						|
                      "name": "tags",
 | 
						|
                      "start": 616,
 | 
						|
                      "type": "Identifier"
 | 
						|
                    },
 | 
						|
                    "arg": {
 | 
						|
                      "elements": [
 | 
						|
                        {
 | 
						|
                          "arguments": [
 | 
						|
                            {
 | 
						|
                              "end": 645,
 | 
						|
                              "name": "seg01",
 | 
						|
                              "start": 640,
 | 
						|
                              "type": "Identifier",
 | 
						|
                              "type": "Identifier"
 | 
						|
                            }
 | 
						|
                          ],
 | 
						|
                          "callee": {
 | 
						|
                            "end": 639,
 | 
						|
                            "name": "getOppositeEdge",
 | 
						|
                            "start": 624,
 | 
						|
                            "type": "Identifier"
 | 
						|
                          },
 | 
						|
                          "end": 646,
 | 
						|
                          "start": 624,
 | 
						|
                          "type": "CallExpression",
 | 
						|
                          "type": "CallExpression"
 | 
						|
                        }
 | 
						|
                      ],
 | 
						|
                      "end": 647,
 | 
						|
                      "start": 623,
 | 
						|
                      "type": "ArrayExpression",
 | 
						|
                      "type": "ArrayExpression"
 | 
						|
                    }
 | 
						|
                  },
 | 
						|
                  {
 | 
						|
                    "type": "LabeledArg",
 | 
						|
                    "label": {
 | 
						|
                      "end": 652,
 | 
						|
                      "name": "tag",
 | 
						|
                      "start": 649,
 | 
						|
                      "type": "Identifier"
 | 
						|
                    },
 | 
						|
                    "arg": {
 | 
						|
                      "end": 661,
 | 
						|
                      "start": 655,
 | 
						|
                      "type": "TagDeclarator",
 | 
						|
                      "type": "TagDeclarator",
 | 
						|
                      "value": "seg03"
 | 
						|
                    }
 | 
						|
                  }
 | 
						|
                ],
 | 
						|
                "callee": {
 | 
						|
                  "end": 602,
 | 
						|
                  "name": "chamfer",
 | 
						|
                  "start": 595,
 | 
						|
                  "type": "Identifier"
 | 
						|
                },
 | 
						|
                "end": 662,
 | 
						|
                "start": 595,
 | 
						|
                "type": "CallExpressionKw",
 | 
						|
                "type": "CallExpressionKw",
 | 
						|
                "unlabeled": null
 | 
						|
              }
 | 
						|
            ],
 | 
						|
            "end": 662,
 | 
						|
            "start": 460,
 | 
						|
            "type": "PipeExpression",
 | 
						|
            "type": "PipeExpression"
 | 
						|
          },
 | 
						|
          "start": 447,
 | 
						|
          "type": "VariableDeclarator"
 | 
						|
        },
 | 
						|
        "end": 662,
 | 
						|
        "kind": "const",
 | 
						|
        "start": 447,
 | 
						|
        "type": "VariableDeclaration",
 | 
						|
        "type": "VariableDeclaration"
 | 
						|
      },
 | 
						|
      {
 | 
						|
        "declaration": {
 | 
						|
          "end": 1123,
 | 
						|
          "id": {
 | 
						|
            "end": 673,
 | 
						|
            "name": "sketch003",
 | 
						|
            "start": 664,
 | 
						|
            "type": "Identifier"
 | 
						|
          },
 | 
						|
          "init": {
 | 
						|
            "body": [
 | 
						|
              {
 | 
						|
                "arguments": [
 | 
						|
                  {
 | 
						|
                    "end": 700,
 | 
						|
                    "name": "extrude001",
 | 
						|
                    "start": 690,
 | 
						|
                    "type": "Identifier",
 | 
						|
                    "type": "Identifier"
 | 
						|
                  },
 | 
						|
                  {
 | 
						|
                    "end": 707,
 | 
						|
                    "name": "seg04",
 | 
						|
                    "start": 702,
 | 
						|
                    "type": "Identifier",
 | 
						|
                    "type": "Identifier"
 | 
						|
                  }
 | 
						|
                ],
 | 
						|
                "callee": {
 | 
						|
                  "end": 689,
 | 
						|
                  "name": "startSketchOn",
 | 
						|
                  "start": 676,
 | 
						|
                  "type": "Identifier"
 | 
						|
                },
 | 
						|
                "end": 708,
 | 
						|
                "start": 676,
 | 
						|
                "type": "CallExpression",
 | 
						|
                "type": "CallExpression"
 | 
						|
              },
 | 
						|
              {
 | 
						|
                "arguments": [
 | 
						|
                  {
 | 
						|
                    "elements": [
 | 
						|
                      {
 | 
						|
                        "argument": {
 | 
						|
                          "end": 735,
 | 
						|
                          "raw": "69.1",
 | 
						|
                          "start": 731,
 | 
						|
                          "type": "Literal",
 | 
						|
                          "type": "Literal",
 | 
						|
                          "value": {
 | 
						|
                            "value": 69.1,
 | 
						|
                            "suffix": "None"
 | 
						|
                          }
 | 
						|
                        },
 | 
						|
                        "end": 735,
 | 
						|
                        "operator": "-",
 | 
						|
                        "start": 730,
 | 
						|
                        "type": "UnaryExpression",
 | 
						|
                        "type": "UnaryExpression"
 | 
						|
                      },
 | 
						|
                      {
 | 
						|
                        "end": 743,
 | 
						|
                        "raw": "277.34",
 | 
						|
                        "start": 737,
 | 
						|
                        "type": "Literal",
 | 
						|
                        "type": "Literal",
 | 
						|
                        "value": {
 | 
						|
                          "value": 277.34,
 | 
						|
                          "suffix": "None"
 | 
						|
                        }
 | 
						|
                      }
 | 
						|
                    ],
 | 
						|
                    "end": 744,
 | 
						|
                    "start": 729,
 | 
						|
                    "type": "ArrayExpression",
 | 
						|
                    "type": "ArrayExpression"
 | 
						|
                  },
 | 
						|
                  {
 | 
						|
                    "end": 747,
 | 
						|
                    "start": 746,
 | 
						|
                    "type": "PipeSubstitution",
 | 
						|
                    "type": "PipeSubstitution"
 | 
						|
                  }
 | 
						|
                ],
 | 
						|
                "callee": {
 | 
						|
                  "end": 728,
 | 
						|
                  "name": "startProfileAt",
 | 
						|
                  "start": 714,
 | 
						|
                  "type": "Identifier"
 | 
						|
                },
 | 
						|
                "end": 748,
 | 
						|
                "start": 714,
 | 
						|
                "type": "CallExpression",
 | 
						|
                "type": "CallExpression"
 | 
						|
              },
 | 
						|
              {
 | 
						|
                "arguments": [
 | 
						|
                  {
 | 
						|
                    "type": "LabeledArg",
 | 
						|
                    "label": {
 | 
						|
                      "end": 770,
 | 
						|
                      "name": "angle",
 | 
						|
                      "start": 765,
 | 
						|
                      "type": "Identifier"
 | 
						|
                    },
 | 
						|
                    "arg": {
 | 
						|
                      "end": 774,
 | 
						|
                      "raw": "0",
 | 
						|
                      "start": 773,
 | 
						|
                      "type": "Literal",
 | 
						|
                      "type": "Literal",
 | 
						|
                      "value": {
 | 
						|
                        "value": 0.0,
 | 
						|
                        "suffix": "None"
 | 
						|
                      }
 | 
						|
                    }
 | 
						|
                  },
 | 
						|
                  {
 | 
						|
                    "type": "LabeledArg",
 | 
						|
                    "label": {
 | 
						|
                      "end": 782,
 | 
						|
                      "name": "length",
 | 
						|
                      "start": 776,
 | 
						|
                      "type": "Identifier"
 | 
						|
                    },
 | 
						|
                    "arg": {
 | 
						|
                      "end": 790,
 | 
						|
                      "raw": "41.48",
 | 
						|
                      "start": 785,
 | 
						|
                      "type": "Literal",
 | 
						|
                      "type": "Literal",
 | 
						|
                      "value": {
 | 
						|
                        "value": 41.48,
 | 
						|
                        "suffix": "None"
 | 
						|
                      }
 | 
						|
                    }
 | 
						|
                  },
 | 
						|
                  {
 | 
						|
                    "type": "LabeledArg",
 | 
						|
                    "label": {
 | 
						|
                      "end": 795,
 | 
						|
                      "name": "tag",
 | 
						|
                      "start": 792,
 | 
						|
                      "type": "Identifier"
 | 
						|
                    },
 | 
						|
                    "arg": {
 | 
						|
                      "end": 819,
 | 
						|
                      "start": 798,
 | 
						|
                      "type": "TagDeclarator",
 | 
						|
                      "type": "TagDeclarator",
 | 
						|
                      "value": "rectangleSegmentA003"
 | 
						|
                    }
 | 
						|
                  }
 | 
						|
                ],
 | 
						|
                "callee": {
 | 
						|
                  "end": 764,
 | 
						|
                  "name": "angledLine",
 | 
						|
                  "start": 754,
 | 
						|
                  "type": "Identifier"
 | 
						|
                },
 | 
						|
                "end": 820,
 | 
						|
                "start": 754,
 | 
						|
                "type": "CallExpressionKw",
 | 
						|
                "type": "CallExpressionKw",
 | 
						|
                "unlabeled": null
 | 
						|
              },
 | 
						|
              {
 | 
						|
                "arguments": [
 | 
						|
                  {
 | 
						|
                    "type": "LabeledArg",
 | 
						|
                    "label": {
 | 
						|
                      "end": 842,
 | 
						|
                      "name": "angle",
 | 
						|
                      "start": 837,
 | 
						|
                      "type": "Identifier"
 | 
						|
                    },
 | 
						|
                    "arg": {
 | 
						|
                      "end": 878,
 | 
						|
                      "left": {
 | 
						|
                        "arguments": [
 | 
						|
                          {
 | 
						|
                            "end": 872,
 | 
						|
                            "name": "rectangleSegmentA003",
 | 
						|
                            "start": 852,
 | 
						|
                            "type": "Identifier",
 | 
						|
                            "type": "Identifier"
 | 
						|
                          }
 | 
						|
                        ],
 | 
						|
                        "callee": {
 | 
						|
                          "end": 851,
 | 
						|
                          "name": "segAng",
 | 
						|
                          "start": 845,
 | 
						|
                          "type": "Identifier"
 | 
						|
                        },
 | 
						|
                        "end": 873,
 | 
						|
                        "start": 845,
 | 
						|
                        "type": "CallExpression",
 | 
						|
                        "type": "CallExpression"
 | 
						|
                      },
 | 
						|
                      "operator": "-",
 | 
						|
                      "right": {
 | 
						|
                        "end": 878,
 | 
						|
                        "raw": "90",
 | 
						|
                        "start": 876,
 | 
						|
                        "type": "Literal",
 | 
						|
                        "type": "Literal",
 | 
						|
                        "value": {
 | 
						|
                          "value": 90.0,
 | 
						|
                          "suffix": "None"
 | 
						|
                        }
 | 
						|
                      },
 | 
						|
                      "start": 845,
 | 
						|
                      "type": "BinaryExpression",
 | 
						|
                      "type": "BinaryExpression"
 | 
						|
                    }
 | 
						|
                  },
 | 
						|
                  {
 | 
						|
                    "type": "LabeledArg",
 | 
						|
                    "label": {
 | 
						|
                      "end": 886,
 | 
						|
                      "name": "length",
 | 
						|
                      "start": 880,
 | 
						|
                      "type": "Identifier"
 | 
						|
                    },
 | 
						|
                    "arg": {
 | 
						|
                      "end": 894,
 | 
						|
                      "raw": "104.8",
 | 
						|
                      "start": 889,
 | 
						|
                      "type": "Literal",
 | 
						|
                      "type": "Literal",
 | 
						|
                      "value": {
 | 
						|
                        "value": 104.8,
 | 
						|
                        "suffix": "None"
 | 
						|
                      }
 | 
						|
                    }
 | 
						|
                  },
 | 
						|
                  {
 | 
						|
                    "type": "LabeledArg",
 | 
						|
                    "label": {
 | 
						|
                      "end": 899,
 | 
						|
                      "name": "tag",
 | 
						|
                      "start": 896,
 | 
						|
                      "type": "Identifier"
 | 
						|
                    },
 | 
						|
                    "arg": {
 | 
						|
                      "end": 923,
 | 
						|
                      "start": 902,
 | 
						|
                      "type": "TagDeclarator",
 | 
						|
                      "type": "TagDeclarator",
 | 
						|
                      "value": "rectangleSegmentB002"
 | 
						|
                    }
 | 
						|
                  }
 | 
						|
                ],
 | 
						|
                "callee": {
 | 
						|
                  "end": 836,
 | 
						|
                  "name": "angledLine",
 | 
						|
                  "start": 826,
 | 
						|
                  "type": "Identifier"
 | 
						|
                },
 | 
						|
                "end": 924,
 | 
						|
                "start": 826,
 | 
						|
                "type": "CallExpressionKw",
 | 
						|
                "type": "CallExpressionKw",
 | 
						|
                "unlabeled": null
 | 
						|
              },
 | 
						|
              {
 | 
						|
                "arguments": [
 | 
						|
                  {
 | 
						|
                    "type": "LabeledArg",
 | 
						|
                    "label": {
 | 
						|
                      "end": 946,
 | 
						|
                      "name": "angle",
 | 
						|
                      "start": 941,
 | 
						|
                      "type": "Identifier"
 | 
						|
                    },
 | 
						|
                    "arg": {
 | 
						|
                      "arguments": [
 | 
						|
                        {
 | 
						|
                          "end": 976,
 | 
						|
                          "name": "rectangleSegmentA003",
 | 
						|
                          "start": 956,
 | 
						|
                          "type": "Identifier",
 | 
						|
                          "type": "Identifier"
 | 
						|
                        }
 | 
						|
                      ],
 | 
						|
                      "callee": {
 | 
						|
                        "end": 955,
 | 
						|
                        "name": "segAng",
 | 
						|
                        "start": 949,
 | 
						|
                        "type": "Identifier"
 | 
						|
                      },
 | 
						|
                      "end": 977,
 | 
						|
                      "start": 949,
 | 
						|
                      "type": "CallExpression",
 | 
						|
                      "type": "CallExpression"
 | 
						|
                    }
 | 
						|
                  },
 | 
						|
                  {
 | 
						|
                    "type": "LabeledArg",
 | 
						|
                    "label": {
 | 
						|
                      "end": 985,
 | 
						|
                      "name": "length",
 | 
						|
                      "start": 979,
 | 
						|
                      "type": "Identifier"
 | 
						|
                    },
 | 
						|
                    "arg": {
 | 
						|
                      "argument": {
 | 
						|
                        "arguments": [
 | 
						|
                          {
 | 
						|
                            "end": 1016,
 | 
						|
                            "name": "rectangleSegmentA003",
 | 
						|
                            "start": 996,
 | 
						|
                            "type": "Identifier",
 | 
						|
                            "type": "Identifier"
 | 
						|
                          }
 | 
						|
                        ],
 | 
						|
                        "callee": {
 | 
						|
                          "end": 995,
 | 
						|
                          "name": "segLen",
 | 
						|
                          "start": 989,
 | 
						|
                          "type": "Identifier"
 | 
						|
                        },
 | 
						|
                        "end": 1017,
 | 
						|
                        "start": 989,
 | 
						|
                        "type": "CallExpression",
 | 
						|
                        "type": "CallExpression"
 | 
						|
                      },
 | 
						|
                      "end": 1017,
 | 
						|
                      "operator": "-",
 | 
						|
                      "start": 988,
 | 
						|
                      "type": "UnaryExpression",
 | 
						|
                      "type": "UnaryExpression"
 | 
						|
                    }
 | 
						|
                  },
 | 
						|
                  {
 | 
						|
                    "type": "LabeledArg",
 | 
						|
                    "label": {
 | 
						|
                      "end": 1022,
 | 
						|
                      "name": "tag",
 | 
						|
                      "start": 1019,
 | 
						|
                      "type": "Identifier"
 | 
						|
                    },
 | 
						|
                    "arg": {
 | 
						|
                      "end": 1046,
 | 
						|
                      "start": 1025,
 | 
						|
                      "type": "TagDeclarator",
 | 
						|
                      "type": "TagDeclarator",
 | 
						|
                      "value": "rectangleSegmentC002"
 | 
						|
                    }
 | 
						|
                  }
 | 
						|
                ],
 | 
						|
                "callee": {
 | 
						|
                  "end": 940,
 | 
						|
                  "name": "angledLine",
 | 
						|
                  "start": 930,
 | 
						|
                  "type": "Identifier"
 | 
						|
                },
 | 
						|
                "end": 1047,
 | 
						|
                "start": 930,
 | 
						|
                "type": "CallExpressionKw",
 | 
						|
                "type": "CallExpressionKw",
 | 
						|
                "unlabeled": null
 | 
						|
              },
 | 
						|
              {
 | 
						|
                "arguments": [
 | 
						|
                  {
 | 
						|
                    "type": "LabeledArg",
 | 
						|
                    "label": {
 | 
						|
                      "end": 1069,
 | 
						|
                      "name": "endAbsolute",
 | 
						|
                      "start": 1058,
 | 
						|
                      "type": "Identifier"
 | 
						|
                    },
 | 
						|
                    "arg": {
 | 
						|
                      "elements": [
 | 
						|
                        {
 | 
						|
                          "arguments": [
 | 
						|
                            {
 | 
						|
                              "end": 1088,
 | 
						|
                              "start": 1087,
 | 
						|
                              "type": "PipeSubstitution",
 | 
						|
                              "type": "PipeSubstitution"
 | 
						|
                            }
 | 
						|
                          ],
 | 
						|
                          "callee": {
 | 
						|
                            "end": 1086,
 | 
						|
                            "name": "profileStartX",
 | 
						|
                            "start": 1073,
 | 
						|
                            "type": "Identifier"
 | 
						|
                          },
 | 
						|
                          "end": 1089,
 | 
						|
                          "start": 1073,
 | 
						|
                          "type": "CallExpression",
 | 
						|
                          "type": "CallExpression"
 | 
						|
                        },
 | 
						|
                        {
 | 
						|
                          "arguments": [
 | 
						|
                            {
 | 
						|
                              "end": 1106,
 | 
						|
                              "start": 1105,
 | 
						|
                              "type": "PipeSubstitution",
 | 
						|
                              "type": "PipeSubstitution"
 | 
						|
                            }
 | 
						|
                          ],
 | 
						|
                          "callee": {
 | 
						|
                            "end": 1104,
 | 
						|
                            "name": "profileStartY",
 | 
						|
                            "start": 1091,
 | 
						|
                            "type": "Identifier"
 | 
						|
                          },
 | 
						|
                          "end": 1107,
 | 
						|
                          "start": 1091,
 | 
						|
                          "type": "CallExpression",
 | 
						|
                          "type": "CallExpression"
 | 
						|
                        }
 | 
						|
                      ],
 | 
						|
                      "end": 1108,
 | 
						|
                      "start": 1072,
 | 
						|
                      "type": "ArrayExpression",
 | 
						|
                      "type": "ArrayExpression"
 | 
						|
                    }
 | 
						|
                  }
 | 
						|
                ],
 | 
						|
                "callee": {
 | 
						|
                  "end": 1057,
 | 
						|
                  "name": "line",
 | 
						|
                  "start": 1053,
 | 
						|
                  "type": "Identifier"
 | 
						|
                },
 | 
						|
                "end": 1109,
 | 
						|
                "start": 1053,
 | 
						|
                "type": "CallExpressionKw",
 | 
						|
                "type": "CallExpressionKw",
 | 
						|
                "unlabeled": null
 | 
						|
              },
 | 
						|
              {
 | 
						|
                "arguments": [
 | 
						|
                  {
 | 
						|
                    "end": 1122,
 | 
						|
                    "start": 1121,
 | 
						|
                    "type": "PipeSubstitution",
 | 
						|
                    "type": "PipeSubstitution"
 | 
						|
                  }
 | 
						|
                ],
 | 
						|
                "callee": {
 | 
						|
                  "end": 1120,
 | 
						|
                  "name": "close",
 | 
						|
                  "start": 1115,
 | 
						|
                  "type": "Identifier"
 | 
						|
                },
 | 
						|
                "end": 1123,
 | 
						|
                "start": 1115,
 | 
						|
                "type": "CallExpression",
 | 
						|
                "type": "CallExpression"
 | 
						|
              }
 | 
						|
            ],
 | 
						|
            "end": 1123,
 | 
						|
            "start": 676,
 | 
						|
            "type": "PipeExpression",
 | 
						|
            "type": "PipeExpression"
 | 
						|
          },
 | 
						|
          "start": 664,
 | 
						|
          "type": "VariableDeclarator"
 | 
						|
        },
 | 
						|
        "end": 1123,
 | 
						|
        "kind": "const",
 | 
						|
        "start": 664,
 | 
						|
        "type": "VariableDeclaration",
 | 
						|
        "type": "VariableDeclaration"
 | 
						|
      },
 | 
						|
      {
 | 
						|
        "declaration": {
 | 
						|
          "end": 1585,
 | 
						|
          "id": {
 | 
						|
            "end": 1133,
 | 
						|
            "name": "sketch002",
 | 
						|
            "start": 1124,
 | 
						|
            "type": "Identifier"
 | 
						|
          },
 | 
						|
          "init": {
 | 
						|
            "body": [
 | 
						|
              {
 | 
						|
                "arguments": [
 | 
						|
                  {
 | 
						|
                    "end": 1160,
 | 
						|
                    "name": "extrude001",
 | 
						|
                    "start": 1150,
 | 
						|
                    "type": "Identifier",
 | 
						|
                    "type": "Identifier"
 | 
						|
                  },
 | 
						|
                  {
 | 
						|
                    "end": 1167,
 | 
						|
                    "name": "seg03",
 | 
						|
                    "start": 1162,
 | 
						|
                    "type": "Identifier",
 | 
						|
                    "type": "Identifier"
 | 
						|
                  }
 | 
						|
                ],
 | 
						|
                "callee": {
 | 
						|
                  "end": 1149,
 | 
						|
                  "name": "startSketchOn",
 | 
						|
                  "start": 1136,
 | 
						|
                  "type": "Identifier"
 | 
						|
                },
 | 
						|
                "end": 1168,
 | 
						|
                "start": 1136,
 | 
						|
                "type": "CallExpression",
 | 
						|
                "type": "CallExpression"
 | 
						|
              },
 | 
						|
              {
 | 
						|
                "arguments": [
 | 
						|
                  {
 | 
						|
                    "elements": [
 | 
						|
                      {
 | 
						|
                        "end": 1196,
 | 
						|
                        "raw": "159.25",
 | 
						|
                        "start": 1190,
 | 
						|
                        "type": "Literal",
 | 
						|
                        "type": "Literal",
 | 
						|
                        "value": {
 | 
						|
                          "value": 159.25,
 | 
						|
                          "suffix": "None"
 | 
						|
                        }
 | 
						|
                      },
 | 
						|
                      {
 | 
						|
                        "end": 1204,
 | 
						|
                        "raw": "278.35",
 | 
						|
                        "start": 1198,
 | 
						|
                        "type": "Literal",
 | 
						|
                        "type": "Literal",
 | 
						|
                        "value": {
 | 
						|
                          "value": 278.35,
 | 
						|
                          "suffix": "None"
 | 
						|
                        }
 | 
						|
                      }
 | 
						|
                    ],
 | 
						|
                    "end": 1205,
 | 
						|
                    "start": 1189,
 | 
						|
                    "type": "ArrayExpression",
 | 
						|
                    "type": "ArrayExpression"
 | 
						|
                  },
 | 
						|
                  {
 | 
						|
                    "end": 1208,
 | 
						|
                    "start": 1207,
 | 
						|
                    "type": "PipeSubstitution",
 | 
						|
                    "type": "PipeSubstitution"
 | 
						|
                  }
 | 
						|
                ],
 | 
						|
                "callee": {
 | 
						|
                  "end": 1188,
 | 
						|
                  "name": "startProfileAt",
 | 
						|
                  "start": 1174,
 | 
						|
                  "type": "Identifier"
 | 
						|
                },
 | 
						|
                "end": 1209,
 | 
						|
                "start": 1174,
 | 
						|
                "type": "CallExpression",
 | 
						|
                "type": "CallExpression"
 | 
						|
              },
 | 
						|
              {
 | 
						|
                "arguments": [
 | 
						|
                  {
 | 
						|
                    "type": "LabeledArg",
 | 
						|
                    "label": {
 | 
						|
                      "end": 1231,
 | 
						|
                      "name": "angle",
 | 
						|
                      "start": 1226,
 | 
						|
                      "type": "Identifier"
 | 
						|
                    },
 | 
						|
                    "arg": {
 | 
						|
                      "end": 1235,
 | 
						|
                      "raw": "0",
 | 
						|
                      "start": 1234,
 | 
						|
                      "type": "Literal",
 | 
						|
                      "type": "Literal",
 | 
						|
                      "value": {
 | 
						|
                        "value": 0.0,
 | 
						|
                        "suffix": "None"
 | 
						|
                      }
 | 
						|
                    }
 | 
						|
                  },
 | 
						|
                  {
 | 
						|
                    "type": "LabeledArg",
 | 
						|
                    "label": {
 | 
						|
                      "end": 1243,
 | 
						|
                      "name": "length",
 | 
						|
                      "start": 1237,
 | 
						|
                      "type": "Identifier"
 | 
						|
                    },
 | 
						|
                    "arg": {
 | 
						|
                      "end": 1251,
 | 
						|
                      "raw": "40.82",
 | 
						|
                      "start": 1246,
 | 
						|
                      "type": "Literal",
 | 
						|
                      "type": "Literal",
 | 
						|
                      "value": {
 | 
						|
                        "value": 40.82,
 | 
						|
                        "suffix": "None"
 | 
						|
                      }
 | 
						|
                    }
 | 
						|
                  },
 | 
						|
                  {
 | 
						|
                    "type": "LabeledArg",
 | 
						|
                    "label": {
 | 
						|
                      "end": 1256,
 | 
						|
                      "name": "tag",
 | 
						|
                      "start": 1253,
 | 
						|
                      "type": "Identifier"
 | 
						|
                    },
 | 
						|
                    "arg": {
 | 
						|
                      "end": 1280,
 | 
						|
                      "start": 1259,
 | 
						|
                      "type": "TagDeclarator",
 | 
						|
                      "type": "TagDeclarator",
 | 
						|
                      "value": "rectangleSegmentA002"
 | 
						|
                    }
 | 
						|
                  }
 | 
						|
                ],
 | 
						|
                "callee": {
 | 
						|
                  "end": 1225,
 | 
						|
                  "name": "angledLine",
 | 
						|
                  "start": 1215,
 | 
						|
                  "type": "Identifier"
 | 
						|
                },
 | 
						|
                "end": 1281,
 | 
						|
                "start": 1215,
 | 
						|
                "type": "CallExpressionKw",
 | 
						|
                "type": "CallExpressionKw",
 | 
						|
                "unlabeled": null
 | 
						|
              },
 | 
						|
              {
 | 
						|
                "arguments": [
 | 
						|
                  {
 | 
						|
                    "type": "LabeledArg",
 | 
						|
                    "label": {
 | 
						|
                      "end": 1303,
 | 
						|
                      "name": "angle",
 | 
						|
                      "start": 1298,
 | 
						|
                      "type": "Identifier"
 | 
						|
                    },
 | 
						|
                    "arg": {
 | 
						|
                      "end": 1339,
 | 
						|
                      "left": {
 | 
						|
                        "arguments": [
 | 
						|
                          {
 | 
						|
                            "end": 1333,
 | 
						|
                            "name": "rectangleSegmentA002",
 | 
						|
                            "start": 1313,
 | 
						|
                            "type": "Identifier",
 | 
						|
                            "type": "Identifier"
 | 
						|
                          }
 | 
						|
                        ],
 | 
						|
                        "callee": {
 | 
						|
                          "end": 1312,
 | 
						|
                          "name": "segAng",
 | 
						|
                          "start": 1306,
 | 
						|
                          "type": "Identifier"
 | 
						|
                        },
 | 
						|
                        "end": 1334,
 | 
						|
                        "start": 1306,
 | 
						|
                        "type": "CallExpression",
 | 
						|
                        "type": "CallExpression"
 | 
						|
                      },
 | 
						|
                      "operator": "-",
 | 
						|
                      "right": {
 | 
						|
                        "end": 1339,
 | 
						|
                        "raw": "90",
 | 
						|
                        "start": 1337,
 | 
						|
                        "type": "Literal",
 | 
						|
                        "type": "Literal",
 | 
						|
                        "value": {
 | 
						|
                          "value": 90.0,
 | 
						|
                          "suffix": "None"
 | 
						|
                        }
 | 
						|
                      },
 | 
						|
                      "start": 1306,
 | 
						|
                      "type": "BinaryExpression",
 | 
						|
                      "type": "BinaryExpression"
 | 
						|
                    }
 | 
						|
                  },
 | 
						|
                  {
 | 
						|
                    "type": "LabeledArg",
 | 
						|
                    "label": {
 | 
						|
                      "end": 1347,
 | 
						|
                      "name": "length",
 | 
						|
                      "start": 1341,
 | 
						|
                      "type": "Identifier"
 | 
						|
                    },
 | 
						|
                    "arg": {
 | 
						|
                      "end": 1356,
 | 
						|
                      "raw": "132.27",
 | 
						|
                      "start": 1350,
 | 
						|
                      "type": "Literal",
 | 
						|
                      "type": "Literal",
 | 
						|
                      "value": {
 | 
						|
                        "value": 132.27,
 | 
						|
                        "suffix": "None"
 | 
						|
                      }
 | 
						|
                    }
 | 
						|
                  },
 | 
						|
                  {
 | 
						|
                    "type": "LabeledArg",
 | 
						|
                    "label": {
 | 
						|
                      "end": 1361,
 | 
						|
                      "name": "tag",
 | 
						|
                      "start": 1358,
 | 
						|
                      "type": "Identifier"
 | 
						|
                    },
 | 
						|
                    "arg": {
 | 
						|
                      "end": 1385,
 | 
						|
                      "start": 1364,
 | 
						|
                      "type": "TagDeclarator",
 | 
						|
                      "type": "TagDeclarator",
 | 
						|
                      "value": "rectangleSegmentB001"
 | 
						|
                    }
 | 
						|
                  }
 | 
						|
                ],
 | 
						|
                "callee": {
 | 
						|
                  "end": 1297,
 | 
						|
                  "name": "angledLine",
 | 
						|
                  "start": 1287,
 | 
						|
                  "type": "Identifier"
 | 
						|
                },
 | 
						|
                "end": 1386,
 | 
						|
                "start": 1287,
 | 
						|
                "type": "CallExpressionKw",
 | 
						|
                "type": "CallExpressionKw",
 | 
						|
                "unlabeled": null
 | 
						|
              },
 | 
						|
              {
 | 
						|
                "arguments": [
 | 
						|
                  {
 | 
						|
                    "type": "LabeledArg",
 | 
						|
                    "label": {
 | 
						|
                      "end": 1408,
 | 
						|
                      "name": "angle",
 | 
						|
                      "start": 1403,
 | 
						|
                      "type": "Identifier"
 | 
						|
                    },
 | 
						|
                    "arg": {
 | 
						|
                      "arguments": [
 | 
						|
                        {
 | 
						|
                          "end": 1438,
 | 
						|
                          "name": "rectangleSegmentA002",
 | 
						|
                          "start": 1418,
 | 
						|
                          "type": "Identifier",
 | 
						|
                          "type": "Identifier"
 | 
						|
                        }
 | 
						|
                      ],
 | 
						|
                      "callee": {
 | 
						|
                        "end": 1417,
 | 
						|
                        "name": "segAng",
 | 
						|
                        "start": 1411,
 | 
						|
                        "type": "Identifier"
 | 
						|
                      },
 | 
						|
                      "end": 1439,
 | 
						|
                      "start": 1411,
 | 
						|
                      "type": "CallExpression",
 | 
						|
                      "type": "CallExpression"
 | 
						|
                    }
 | 
						|
                  },
 | 
						|
                  {
 | 
						|
                    "type": "LabeledArg",
 | 
						|
                    "label": {
 | 
						|
                      "end": 1447,
 | 
						|
                      "name": "length",
 | 
						|
                      "start": 1441,
 | 
						|
                      "type": "Identifier"
 | 
						|
                    },
 | 
						|
                    "arg": {
 | 
						|
                      "argument": {
 | 
						|
                        "arguments": [
 | 
						|
                          {
 | 
						|
                            "end": 1478,
 | 
						|
                            "name": "rectangleSegmentA002",
 | 
						|
                            "start": 1458,
 | 
						|
                            "type": "Identifier",
 | 
						|
                            "type": "Identifier"
 | 
						|
                          }
 | 
						|
                        ],
 | 
						|
                        "callee": {
 | 
						|
                          "end": 1457,
 | 
						|
                          "name": "segLen",
 | 
						|
                          "start": 1451,
 | 
						|
                          "type": "Identifier"
 | 
						|
                        },
 | 
						|
                        "end": 1479,
 | 
						|
                        "start": 1451,
 | 
						|
                        "type": "CallExpression",
 | 
						|
                        "type": "CallExpression"
 | 
						|
                      },
 | 
						|
                      "end": 1479,
 | 
						|
                      "operator": "-",
 | 
						|
                      "start": 1450,
 | 
						|
                      "type": "UnaryExpression",
 | 
						|
                      "type": "UnaryExpression"
 | 
						|
                    }
 | 
						|
                  },
 | 
						|
                  {
 | 
						|
                    "type": "LabeledArg",
 | 
						|
                    "label": {
 | 
						|
                      "end": 1484,
 | 
						|
                      "name": "tag",
 | 
						|
                      "start": 1481,
 | 
						|
                      "type": "Identifier"
 | 
						|
                    },
 | 
						|
                    "arg": {
 | 
						|
                      "end": 1508,
 | 
						|
                      "start": 1487,
 | 
						|
                      "type": "TagDeclarator",
 | 
						|
                      "type": "TagDeclarator",
 | 
						|
                      "value": "rectangleSegmentC001"
 | 
						|
                    }
 | 
						|
                  }
 | 
						|
                ],
 | 
						|
                "callee": {
 | 
						|
                  "end": 1402,
 | 
						|
                  "name": "angledLine",
 | 
						|
                  "start": 1392,
 | 
						|
                  "type": "Identifier"
 | 
						|
                },
 | 
						|
                "end": 1509,
 | 
						|
                "start": 1392,
 | 
						|
                "type": "CallExpressionKw",
 | 
						|
                "type": "CallExpressionKw",
 | 
						|
                "unlabeled": null
 | 
						|
              },
 | 
						|
              {
 | 
						|
                "arguments": [
 | 
						|
                  {
 | 
						|
                    "type": "LabeledArg",
 | 
						|
                    "label": {
 | 
						|
                      "end": 1531,
 | 
						|
                      "name": "endAbsolute",
 | 
						|
                      "start": 1520,
 | 
						|
                      "type": "Identifier"
 | 
						|
                    },
 | 
						|
                    "arg": {
 | 
						|
                      "elements": [
 | 
						|
                        {
 | 
						|
                          "arguments": [
 | 
						|
                            {
 | 
						|
                              "end": 1550,
 | 
						|
                              "start": 1549,
 | 
						|
                              "type": "PipeSubstitution",
 | 
						|
                              "type": "PipeSubstitution"
 | 
						|
                            }
 | 
						|
                          ],
 | 
						|
                          "callee": {
 | 
						|
                            "end": 1548,
 | 
						|
                            "name": "profileStartX",
 | 
						|
                            "start": 1535,
 | 
						|
                            "type": "Identifier"
 | 
						|
                          },
 | 
						|
                          "end": 1551,
 | 
						|
                          "start": 1535,
 | 
						|
                          "type": "CallExpression",
 | 
						|
                          "type": "CallExpression"
 | 
						|
                        },
 | 
						|
                        {
 | 
						|
                          "arguments": [
 | 
						|
                            {
 | 
						|
                              "end": 1568,
 | 
						|
                              "start": 1567,
 | 
						|
                              "type": "PipeSubstitution",
 | 
						|
                              "type": "PipeSubstitution"
 | 
						|
                            }
 | 
						|
                          ],
 | 
						|
                          "callee": {
 | 
						|
                            "end": 1566,
 | 
						|
                            "name": "profileStartY",
 | 
						|
                            "start": 1553,
 | 
						|
                            "type": "Identifier"
 | 
						|
                          },
 | 
						|
                          "end": 1569,
 | 
						|
                          "start": 1553,
 | 
						|
                          "type": "CallExpression",
 | 
						|
                          "type": "CallExpression"
 | 
						|
                        }
 | 
						|
                      ],
 | 
						|
                      "end": 1570,
 | 
						|
                      "start": 1534,
 | 
						|
                      "type": "ArrayExpression",
 | 
						|
                      "type": "ArrayExpression"
 | 
						|
                    }
 | 
						|
                  }
 | 
						|
                ],
 | 
						|
                "callee": {
 | 
						|
                  "end": 1519,
 | 
						|
                  "name": "line",
 | 
						|
                  "start": 1515,
 | 
						|
                  "type": "Identifier"
 | 
						|
                },
 | 
						|
                "end": 1571,
 | 
						|
                "start": 1515,
 | 
						|
                "type": "CallExpressionKw",
 | 
						|
                "type": "CallExpressionKw",
 | 
						|
                "unlabeled": null
 | 
						|
              },
 | 
						|
              {
 | 
						|
                "arguments": [
 | 
						|
                  {
 | 
						|
                    "end": 1584,
 | 
						|
                    "start": 1583,
 | 
						|
                    "type": "PipeSubstitution",
 | 
						|
                    "type": "PipeSubstitution"
 | 
						|
                  }
 | 
						|
                ],
 | 
						|
                "callee": {
 | 
						|
                  "end": 1582,
 | 
						|
                  "name": "close",
 | 
						|
                  "start": 1577,
 | 
						|
                  "type": "Identifier"
 | 
						|
                },
 | 
						|
                "end": 1585,
 | 
						|
                "start": 1577,
 | 
						|
                "type": "CallExpression",
 | 
						|
                "type": "CallExpression"
 | 
						|
              }
 | 
						|
            ],
 | 
						|
            "end": 1585,
 | 
						|
            "start": 1136,
 | 
						|
            "type": "PipeExpression",
 | 
						|
            "type": "PipeExpression"
 | 
						|
          },
 | 
						|
          "start": 1124,
 | 
						|
          "type": "VariableDeclarator"
 | 
						|
        },
 | 
						|
        "end": 1585,
 | 
						|
        "kind": "const",
 | 
						|
        "start": 1124,
 | 
						|
        "type": "VariableDeclaration",
 | 
						|
        "type": "VariableDeclaration"
 | 
						|
      },
 | 
						|
      {
 | 
						|
        "declaration": {
 | 
						|
          "end": 1630,
 | 
						|
          "id": {
 | 
						|
            "end": 1596,
 | 
						|
            "name": "extrude002",
 | 
						|
            "start": 1586,
 | 
						|
            "type": "Identifier"
 | 
						|
          },
 | 
						|
          "init": {
 | 
						|
            "arguments": [
 | 
						|
              {
 | 
						|
                "type": "LabeledArg",
 | 
						|
                "label": {
 | 
						|
                  "end": 1624,
 | 
						|
                  "name": "length",
 | 
						|
                  "start": 1618,
 | 
						|
                  "type": "Identifier"
 | 
						|
                },
 | 
						|
                "arg": {
 | 
						|
                  "end": 1629,
 | 
						|
                  "raw": "50",
 | 
						|
                  "start": 1627,
 | 
						|
                  "type": "Literal",
 | 
						|
                  "type": "Literal",
 | 
						|
                  "value": {
 | 
						|
                    "value": 50.0,
 | 
						|
                    "suffix": "None"
 | 
						|
                  }
 | 
						|
                }
 | 
						|
              }
 | 
						|
            ],
 | 
						|
            "callee": {
 | 
						|
              "end": 1606,
 | 
						|
              "name": "extrude",
 | 
						|
              "start": 1599,
 | 
						|
              "type": "Identifier"
 | 
						|
            },
 | 
						|
            "end": 1630,
 | 
						|
            "start": 1599,
 | 
						|
            "type": "CallExpressionKw",
 | 
						|
            "type": "CallExpressionKw",
 | 
						|
            "unlabeled": {
 | 
						|
              "end": 1616,
 | 
						|
              "name": "sketch002",
 | 
						|
              "start": 1607,
 | 
						|
              "type": "Identifier",
 | 
						|
              "type": "Identifier"
 | 
						|
            }
 | 
						|
          },
 | 
						|
          "start": 1586,
 | 
						|
          "type": "VariableDeclarator"
 | 
						|
        },
 | 
						|
        "end": 1630,
 | 
						|
        "kind": "const",
 | 
						|
        "start": 1586,
 | 
						|
        "type": "VariableDeclaration",
 | 
						|
        "type": "VariableDeclaration"
 | 
						|
      }
 | 
						|
    ],
 | 
						|
    "end": 1631,
 | 
						|
    "nonCodeMeta": {
 | 
						|
      "nonCodeNodes": {
 | 
						|
        "1": [
 | 
						|
          {
 | 
						|
            "end": 664,
 | 
						|
            "start": 662,
 | 
						|
            "type": "NonCodeNode",
 | 
						|
            "value": {
 | 
						|
              "type": "newLine"
 | 
						|
            }
 | 
						|
          }
 | 
						|
        ]
 | 
						|
      },
 | 
						|
      "startNodes": []
 | 
						|
    },
 | 
						|
    "start": 0
 | 
						|
  }
 | 
						|
}
 |