* Bump ts-rs from 10.1.0 to 11.0.1 * Fix breaking changes * Fix tsc errors * Update output * Upgrade to kittycad-modeling-cmds 0.2.124 for ts-rs update * Update parser snaps * Update output of gridfinity_bins_stacking_lip sample * Fix missing field in TS unit tests * Fix tsc type error with fixed_size_grid project setting
		
			
				
	
	
		
			8461 lines
		
	
	
		
			272 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
			
		
		
	
	
			8461 lines
		
	
	
		
			272 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
| ---
 | |
| source: kcl-lib/src/simulation_tests.rs
 | |
| description: Result of parsing truss-structure.kcl
 | |
| ---
 | |
| {
 | |
|   "Ok": {
 | |
|     "body": [
 | |
|       {
 | |
|         "commentStart": 0,
 | |
|         "declaration": {
 | |
|           "commentStart": 0,
 | |
|           "end": 0,
 | |
|           "id": {
 | |
|             "commentStart": 0,
 | |
|             "end": 0,
 | |
|             "moduleId": 0,
 | |
|             "name": "thickness",
 | |
|             "start": 0,
 | |
|             "type": "Identifier"
 | |
|           },
 | |
|           "init": {
 | |
|             "commentStart": 0,
 | |
|             "end": 0,
 | |
|             "moduleId": 0,
 | |
|             "raw": "4",
 | |
|             "start": 0,
 | |
|             "type": "Literal",
 | |
|             "type": "Literal",
 | |
|             "value": {
 | |
|               "value": 4.0,
 | |
|               "suffix": "None"
 | |
|             }
 | |
|           },
 | |
|           "moduleId": 0,
 | |
|           "start": 0,
 | |
|           "type": "VariableDeclarator"
 | |
|         },
 | |
|         "end": 0,
 | |
|         "kind": "const",
 | |
|         "moduleId": 0,
 | |
|         "preComments": [
 | |
|           "// Define parameters"
 | |
|         ],
 | |
|         "start": 0,
 | |
|         "type": "VariableDeclaration",
 | |
|         "type": "VariableDeclaration"
 | |
|       },
 | |
|       {
 | |
|         "commentStart": 0,
 | |
|         "declaration": {
 | |
|           "commentStart": 0,
 | |
|           "end": 0,
 | |
|           "id": {
 | |
|             "commentStart": 0,
 | |
|             "end": 0,
 | |
|             "moduleId": 0,
 | |
|             "name": "totalLength",
 | |
|             "start": 0,
 | |
|             "type": "Identifier"
 | |
|           },
 | |
|           "init": {
 | |
|             "commentStart": 0,
 | |
|             "end": 0,
 | |
|             "moduleId": 0,
 | |
|             "raw": "180",
 | |
|             "start": 0,
 | |
|             "type": "Literal",
 | |
|             "type": "Literal",
 | |
|             "value": {
 | |
|               "value": 180.0,
 | |
|               "suffix": "None"
 | |
|             }
 | |
|           },
 | |
|           "moduleId": 0,
 | |
|           "start": 0,
 | |
|           "type": "VariableDeclarator"
 | |
|         },
 | |
|         "end": 0,
 | |
|         "kind": "const",
 | |
|         "moduleId": 0,
 | |
|         "start": 0,
 | |
|         "type": "VariableDeclaration",
 | |
|         "type": "VariableDeclaration"
 | |
|       },
 | |
|       {
 | |
|         "commentStart": 0,
 | |
|         "declaration": {
 | |
|           "commentStart": 0,
 | |
|           "end": 0,
 | |
|           "id": {
 | |
|             "commentStart": 0,
 | |
|             "end": 0,
 | |
|             "moduleId": 0,
 | |
|             "name": "totalWidth",
 | |
|             "start": 0,
 | |
|             "type": "Identifier"
 | |
|           },
 | |
|           "init": {
 | |
|             "commentStart": 0,
 | |
|             "end": 0,
 | |
|             "moduleId": 0,
 | |
|             "raw": "120",
 | |
|             "start": 0,
 | |
|             "type": "Literal",
 | |
|             "type": "Literal",
 | |
|             "value": {
 | |
|               "value": 120.0,
 | |
|               "suffix": "None"
 | |
|             }
 | |
|           },
 | |
|           "moduleId": 0,
 | |
|           "start": 0,
 | |
|           "type": "VariableDeclarator"
 | |
|         },
 | |
|         "end": 0,
 | |
|         "kind": "const",
 | |
|         "moduleId": 0,
 | |
|         "start": 0,
 | |
|         "type": "VariableDeclaration",
 | |
|         "type": "VariableDeclaration"
 | |
|       },
 | |
|       {
 | |
|         "commentStart": 0,
 | |
|         "declaration": {
 | |
|           "commentStart": 0,
 | |
|           "end": 0,
 | |
|           "id": {
 | |
|             "commentStart": 0,
 | |
|             "end": 0,
 | |
|             "moduleId": 0,
 | |
|             "name": "totalHeight",
 | |
|             "start": 0,
 | |
|             "type": "Identifier"
 | |
|           },
 | |
|           "init": {
 | |
|             "commentStart": 0,
 | |
|             "end": 0,
 | |
|             "moduleId": 0,
 | |
|             "raw": "120",
 | |
|             "start": 0,
 | |
|             "type": "Literal",
 | |
|             "type": "Literal",
 | |
|             "value": {
 | |
|               "value": 120.0,
 | |
|               "suffix": "None"
 | |
|             }
 | |
|           },
 | |
|           "moduleId": 0,
 | |
|           "start": 0,
 | |
|           "type": "VariableDeclarator"
 | |
|         },
 | |
|         "end": 0,
 | |
|         "kind": "const",
 | |
|         "moduleId": 0,
 | |
|         "start": 0,
 | |
|         "type": "VariableDeclaration",
 | |
|         "type": "VariableDeclaration"
 | |
|       },
 | |
|       {
 | |
|         "commentStart": 0,
 | |
|         "declaration": {
 | |
|           "commentStart": 0,
 | |
|           "end": 0,
 | |
|           "id": {
 | |
|             "commentStart": 0,
 | |
|             "end": 0,
 | |
|             "moduleId": 0,
 | |
|             "name": "legHeight",
 | |
|             "start": 0,
 | |
|             "type": "Identifier"
 | |
|           },
 | |
|           "init": {
 | |
|             "commentStart": 0,
 | |
|             "end": 0,
 | |
|             "moduleId": 0,
 | |
|             "raw": "48",
 | |
|             "start": 0,
 | |
|             "type": "Literal",
 | |
|             "type": "Literal",
 | |
|             "value": {
 | |
|               "value": 48.0,
 | |
|               "suffix": "None"
 | |
|             }
 | |
|           },
 | |
|           "moduleId": 0,
 | |
|           "start": 0,
 | |
|           "type": "VariableDeclarator"
 | |
|         },
 | |
|         "end": 0,
 | |
|         "kind": "const",
 | |
|         "moduleId": 0,
 | |
|         "start": 0,
 | |
|         "type": "VariableDeclaration",
 | |
|         "type": "VariableDeclaration"
 | |
|       },
 | |
|       {
 | |
|         "commentStart": 0,
 | |
|         "declaration": {
 | |
|           "commentStart": 0,
 | |
|           "end": 0,
 | |
|           "id": {
 | |
|             "commentStart": 0,
 | |
|             "end": 0,
 | |
|             "moduleId": 0,
 | |
|             "name": "topTrussAngle",
 | |
|             "start": 0,
 | |
|             "type": "Identifier"
 | |
|           },
 | |
|           "init": {
 | |
|             "commentStart": 0,
 | |
|             "end": 0,
 | |
|             "moduleId": 0,
 | |
|             "raw": "25",
 | |
|             "start": 0,
 | |
|             "type": "Literal",
 | |
|             "type": "Literal",
 | |
|             "value": {
 | |
|               "value": 25.0,
 | |
|               "suffix": "None"
 | |
|             }
 | |
|           },
 | |
|           "moduleId": 0,
 | |
|           "start": 0,
 | |
|           "type": "VariableDeclarator"
 | |
|         },
 | |
|         "end": 0,
 | |
|         "kind": "const",
 | |
|         "moduleId": 0,
 | |
|         "start": 0,
 | |
|         "type": "VariableDeclaration",
 | |
|         "type": "VariableDeclaration"
 | |
|       },
 | |
|       {
 | |
|         "commentStart": 0,
 | |
|         "declaration": {
 | |
|           "commentStart": 0,
 | |
|           "end": 0,
 | |
|           "id": {
 | |
|             "commentStart": 0,
 | |
|             "end": 0,
 | |
|             "moduleId": 0,
 | |
|             "name": "beamWidth",
 | |
|             "start": 0,
 | |
|             "type": "Identifier"
 | |
|           },
 | |
|           "init": {
 | |
|             "commentStart": 0,
 | |
|             "end": 0,
 | |
|             "moduleId": 0,
 | |
|             "raw": "4",
 | |
|             "start": 0,
 | |
|             "type": "Literal",
 | |
|             "type": "Literal",
 | |
|             "value": {
 | |
|               "value": 4.0,
 | |
|               "suffix": "None"
 | |
|             }
 | |
|           },
 | |
|           "moduleId": 0,
 | |
|           "start": 0,
 | |
|           "type": "VariableDeclarator"
 | |
|         },
 | |
|         "end": 0,
 | |
|         "kind": "const",
 | |
|         "moduleId": 0,
 | |
|         "start": 0,
 | |
|         "type": "VariableDeclaration",
 | |
|         "type": "VariableDeclaration"
 | |
|       },
 | |
|       {
 | |
|         "commentStart": 0,
 | |
|         "declaration": {
 | |
|           "commentStart": 0,
 | |
|           "end": 0,
 | |
|           "id": {
 | |
|             "commentStart": 0,
 | |
|             "end": 0,
 | |
|             "moduleId": 0,
 | |
|             "name": "beamLength",
 | |
|             "start": 0,
 | |
|             "type": "Identifier"
 | |
|           },
 | |
|           "init": {
 | |
|             "commentStart": 0,
 | |
|             "end": 0,
 | |
|             "moduleId": 0,
 | |
|             "raw": "2",
 | |
|             "start": 0,
 | |
|             "type": "Literal",
 | |
|             "type": "Literal",
 | |
|             "value": {
 | |
|               "value": 2.0,
 | |
|               "suffix": "None"
 | |
|             }
 | |
|           },
 | |
|           "moduleId": 0,
 | |
|           "start": 0,
 | |
|           "type": "VariableDeclarator"
 | |
|         },
 | |
|         "end": 0,
 | |
|         "kind": "const",
 | |
|         "moduleId": 0,
 | |
|         "start": 0,
 | |
|         "type": "VariableDeclaration",
 | |
|         "type": "VariableDeclaration"
 | |
|       },
 | |
|       {
 | |
|         "commentStart": 0,
 | |
|         "declaration": {
 | |
|           "commentStart": 0,
 | |
|           "end": 0,
 | |
|           "id": {
 | |
|             "commentStart": 0,
 | |
|             "end": 0,
 | |
|             "moduleId": 0,
 | |
|             "name": "sparAngle",
 | |
|             "start": 0,
 | |
|             "type": "Identifier"
 | |
|           },
 | |
|           "init": {
 | |
|             "commentStart": 0,
 | |
|             "end": 0,
 | |
|             "moduleId": 0,
 | |
|             "raw": "30",
 | |
|             "start": 0,
 | |
|             "type": "Literal",
 | |
|             "type": "Literal",
 | |
|             "value": {
 | |
|               "value": 30.0,
 | |
|               "suffix": "None"
 | |
|             }
 | |
|           },
 | |
|           "moduleId": 0,
 | |
|           "start": 0,
 | |
|           "type": "VariableDeclarator"
 | |
|         },
 | |
|         "end": 0,
 | |
|         "kind": "const",
 | |
|         "moduleId": 0,
 | |
|         "start": 0,
 | |
|         "type": "VariableDeclaration",
 | |
|         "type": "VariableDeclaration"
 | |
|       },
 | |
|       {
 | |
|         "commentStart": 0,
 | |
|         "declaration": {
 | |
|           "commentStart": 0,
 | |
|           "end": 0,
 | |
|           "id": {
 | |
|             "commentStart": 0,
 | |
|             "end": 0,
 | |
|             "moduleId": 0,
 | |
|             "name": "nFrames",
 | |
|             "start": 0,
 | |
|             "type": "Identifier"
 | |
|           },
 | |
|           "init": {
 | |
|             "commentStart": 0,
 | |
|             "end": 0,
 | |
|             "moduleId": 0,
 | |
|             "raw": "3",
 | |
|             "start": 0,
 | |
|             "type": "Literal",
 | |
|             "type": "Literal",
 | |
|             "value": {
 | |
|               "value": 3.0,
 | |
|               "suffix": "None"
 | |
|             }
 | |
|           },
 | |
|           "moduleId": 0,
 | |
|           "start": 0,
 | |
|           "type": "VariableDeclarator"
 | |
|         },
 | |
|         "end": 0,
 | |
|         "kind": "const",
 | |
|         "moduleId": 0,
 | |
|         "start": 0,
 | |
|         "type": "VariableDeclaration",
 | |
|         "type": "VariableDeclaration"
 | |
|       },
 | |
|       {
 | |
|         "commentStart": 0,
 | |
|         "declaration": {
 | |
|           "commentStart": 0,
 | |
|           "end": 0,
 | |
|           "id": {
 | |
|             "commentStart": 0,
 | |
|             "end": 0,
 | |
|             "moduleId": 0,
 | |
|             "name": "crossBeamLength",
 | |
|             "start": 0,
 | |
|             "type": "Identifier"
 | |
|           },
 | |
|           "init": {
 | |
|             "commentStart": 0,
 | |
|             "end": 0,
 | |
|             "moduleId": 0,
 | |
|             "raw": "82",
 | |
|             "start": 0,
 | |
|             "type": "Literal",
 | |
|             "type": "Literal",
 | |
|             "value": {
 | |
|               "value": 82.0,
 | |
|               "suffix": "None"
 | |
|             }
 | |
|           },
 | |
|           "moduleId": 0,
 | |
|           "start": 0,
 | |
|           "type": "VariableDeclarator"
 | |
|         },
 | |
|         "end": 0,
 | |
|         "kind": "const",
 | |
|         "moduleId": 0,
 | |
|         "start": 0,
 | |
|         "type": "VariableDeclaration",
 | |
|         "type": "VariableDeclaration"
 | |
|       },
 | |
|       {
 | |
|         "commentStart": 0,
 | |
|         "declaration": {
 | |
|           "commentStart": 0,
 | |
|           "end": 0,
 | |
|           "id": {
 | |
|             "commentStart": 0,
 | |
|             "end": 0,
 | |
|             "moduleId": 0,
 | |
|             "name": "topFrameSketch",
 | |
|             "start": 0,
 | |
|             "type": "Identifier"
 | |
|           },
 | |
|           "init": {
 | |
|             "arguments": [],
 | |
|             "callee": {
 | |
|               "abs_path": false,
 | |
|               "commentStart": 0,
 | |
|               "end": 0,
 | |
|               "moduleId": 0,
 | |
|               "name": {
 | |
|                 "commentStart": 0,
 | |
|                 "end": 0,
 | |
|                 "moduleId": 0,
 | |
|                 "name": "startSketchOn",
 | |
|                 "start": 0,
 | |
|                 "type": "Identifier"
 | |
|               },
 | |
|               "path": [],
 | |
|               "start": 0,
 | |
|               "type": "Name"
 | |
|             },
 | |
|             "commentStart": 0,
 | |
|             "end": 0,
 | |
|             "moduleId": 0,
 | |
|             "start": 0,
 | |
|             "type": "CallExpressionKw",
 | |
|             "type": "CallExpressionKw",
 | |
|             "unlabeled": {
 | |
|               "abs_path": false,
 | |
|               "commentStart": 0,
 | |
|               "end": 0,
 | |
|               "moduleId": 0,
 | |
|               "name": {
 | |
|                 "commentStart": 0,
 | |
|                 "end": 0,
 | |
|                 "moduleId": 0,
 | |
|                 "name": "YZ",
 | |
|                 "start": 0,
 | |
|                 "type": "Identifier"
 | |
|               },
 | |
|               "path": [],
 | |
|               "start": 0,
 | |
|               "type": "Name",
 | |
|               "type": "Name"
 | |
|             }
 | |
|           },
 | |
|           "moduleId": 0,
 | |
|           "start": 0,
 | |
|           "type": "VariableDeclarator"
 | |
|         },
 | |
|         "end": 0,
 | |
|         "kind": "const",
 | |
|         "moduleId": 0,
 | |
|         "preComments": [
 | |
|           "",
 | |
|           "",
 | |
|           "// Sketch the top frame"
 | |
|         ],
 | |
|         "start": 0,
 | |
|         "type": "VariableDeclaration",
 | |
|         "type": "VariableDeclaration"
 | |
|       },
 | |
|       {
 | |
|         "commentStart": 0,
 | |
|         "declaration": {
 | |
|           "commentStart": 0,
 | |
|           "end": 0,
 | |
|           "id": {
 | |
|             "commentStart": 0,
 | |
|             "end": 0,
 | |
|             "moduleId": 0,
 | |
|             "name": "profile001",
 | |
|             "start": 0,
 | |
|             "type": "Identifier"
 | |
|           },
 | |
|           "init": {
 | |
|             "body": [
 | |
|               {
 | |
|                 "arguments": [
 | |
|                   {
 | |
|                     "type": "LabeledArg",
 | |
|                     "label": {
 | |
|                       "commentStart": 0,
 | |
|                       "end": 0,
 | |
|                       "moduleId": 0,
 | |
|                       "name": "at",
 | |
|                       "start": 0,
 | |
|                       "type": "Identifier"
 | |
|                     },
 | |
|                     "arg": {
 | |
|                       "commentStart": 0,
 | |
|                       "elements": [
 | |
|                         {
 | |
|                           "commentStart": 0,
 | |
|                           "end": 0,
 | |
|                           "left": {
 | |
|                             "abs_path": false,
 | |
|                             "commentStart": 0,
 | |
|                             "end": 0,
 | |
|                             "moduleId": 0,
 | |
|                             "name": {
 | |
|                               "commentStart": 0,
 | |
|                               "end": 0,
 | |
|                               "moduleId": 0,
 | |
|                               "name": "totalWidth",
 | |
|                               "start": 0,
 | |
|                               "type": "Identifier"
 | |
|                             },
 | |
|                             "path": [],
 | |
|                             "start": 0,
 | |
|                             "type": "Name",
 | |
|                             "type": "Name"
 | |
|                           },
 | |
|                           "moduleId": 0,
 | |
|                           "operator": "/",
 | |
|                           "right": {
 | |
|                             "commentStart": 0,
 | |
|                             "end": 0,
 | |
|                             "moduleId": 0,
 | |
|                             "raw": "2",
 | |
|                             "start": 0,
 | |
|                             "type": "Literal",
 | |
|                             "type": "Literal",
 | |
|                             "value": {
 | |
|                               "value": 2.0,
 | |
|                               "suffix": "None"
 | |
|                             }
 | |
|                           },
 | |
|                           "start": 0,
 | |
|                           "type": "BinaryExpression",
 | |
|                           "type": "BinaryExpression"
 | |
|                         },
 | |
|                         {
 | |
|                           "commentStart": 0,
 | |
|                           "end": 0,
 | |
|                           "moduleId": 0,
 | |
|                           "raw": "0",
 | |
|                           "start": 0,
 | |
|                           "type": "Literal",
 | |
|                           "type": "Literal",
 | |
|                           "value": {
 | |
|                             "value": 0.0,
 | |
|                             "suffix": "None"
 | |
|                           }
 | |
|                         }
 | |
|                       ],
 | |
|                       "end": 0,
 | |
|                       "moduleId": 0,
 | |
|                       "start": 0,
 | |
|                       "type": "ArrayExpression",
 | |
|                       "type": "ArrayExpression"
 | |
|                     }
 | |
|                   }
 | |
|                 ],
 | |
|                 "callee": {
 | |
|                   "abs_path": false,
 | |
|                   "commentStart": 0,
 | |
|                   "end": 0,
 | |
|                   "moduleId": 0,
 | |
|                   "name": {
 | |
|                     "commentStart": 0,
 | |
|                     "end": 0,
 | |
|                     "moduleId": 0,
 | |
|                     "name": "startProfile",
 | |
|                     "start": 0,
 | |
|                     "type": "Identifier"
 | |
|                   },
 | |
|                   "path": [],
 | |
|                   "start": 0,
 | |
|                   "type": "Name"
 | |
|                 },
 | |
|                 "commentStart": 0,
 | |
|                 "end": 0,
 | |
|                 "moduleId": 0,
 | |
|                 "start": 0,
 | |
|                 "type": "CallExpressionKw",
 | |
|                 "type": "CallExpressionKw",
 | |
|                 "unlabeled": {
 | |
|                   "abs_path": false,
 | |
|                   "commentStart": 0,
 | |
|                   "end": 0,
 | |
|                   "moduleId": 0,
 | |
|                   "name": {
 | |
|                     "commentStart": 0,
 | |
|                     "end": 0,
 | |
|                     "moduleId": 0,
 | |
|                     "name": "topFrameSketch",
 | |
|                     "start": 0,
 | |
|                     "type": "Identifier"
 | |
|                   },
 | |
|                   "path": [],
 | |
|                   "start": 0,
 | |
|                   "type": "Name",
 | |
|                   "type": "Name"
 | |
|                 }
 | |
|               },
 | |
|               {
 | |
|                 "arguments": [
 | |
|                   {
 | |
|                     "type": "LabeledArg",
 | |
|                     "label": {
 | |
|                       "commentStart": 0,
 | |
|                       "end": 0,
 | |
|                       "moduleId": 0,
 | |
|                       "name": "length",
 | |
|                       "start": 0,
 | |
|                       "type": "Identifier"
 | |
|                     },
 | |
|                     "arg": {
 | |
|                       "argument": {
 | |
|                         "abs_path": false,
 | |
|                         "commentStart": 0,
 | |
|                         "end": 0,
 | |
|                         "moduleId": 0,
 | |
|                         "name": {
 | |
|                           "commentStart": 0,
 | |
|                           "end": 0,
 | |
|                           "moduleId": 0,
 | |
|                           "name": "totalWidth",
 | |
|                           "start": 0,
 | |
|                           "type": "Identifier"
 | |
|                         },
 | |
|                         "path": [],
 | |
|                         "start": 0,
 | |
|                         "type": "Name",
 | |
|                         "type": "Name"
 | |
|                       },
 | |
|                       "commentStart": 0,
 | |
|                       "end": 0,
 | |
|                       "moduleId": 0,
 | |
|                       "operator": "-",
 | |
|                       "start": 0,
 | |
|                       "type": "UnaryExpression",
 | |
|                       "type": "UnaryExpression"
 | |
|                     }
 | |
|                   },
 | |
|                   {
 | |
|                     "type": "LabeledArg",
 | |
|                     "label": {
 | |
|                       "commentStart": 0,
 | |
|                       "end": 0,
 | |
|                       "moduleId": 0,
 | |
|                       "name": "tag",
 | |
|                       "start": 0,
 | |
|                       "type": "Identifier"
 | |
|                     },
 | |
|                     "arg": {
 | |
|                       "commentStart": 0,
 | |
|                       "end": 0,
 | |
|                       "moduleId": 0,
 | |
|                       "start": 0,
 | |
|                       "type": "TagDeclarator",
 | |
|                       "type": "TagDeclarator",
 | |
|                       "value": "bottomFace"
 | |
|                     }
 | |
|                   }
 | |
|                 ],
 | |
|                 "callee": {
 | |
|                   "abs_path": false,
 | |
|                   "commentStart": 0,
 | |
|                   "end": 0,
 | |
|                   "moduleId": 0,
 | |
|                   "name": {
 | |
|                     "commentStart": 0,
 | |
|                     "end": 0,
 | |
|                     "moduleId": 0,
 | |
|                     "name": "xLine",
 | |
|                     "start": 0,
 | |
|                     "type": "Identifier"
 | |
|                   },
 | |
|                   "path": [],
 | |
|                   "start": 0,
 | |
|                   "type": "Name"
 | |
|                 },
 | |
|                 "commentStart": 0,
 | |
|                 "end": 0,
 | |
|                 "moduleId": 0,
 | |
|                 "start": 0,
 | |
|                 "type": "CallExpressionKw",
 | |
|                 "type": "CallExpressionKw",
 | |
|                 "unlabeled": null
 | |
|               },
 | |
|               {
 | |
|                 "arguments": [
 | |
|                   {
 | |
|                     "type": "LabeledArg",
 | |
|                     "label": {
 | |
|                       "commentStart": 0,
 | |
|                       "end": 0,
 | |
|                       "moduleId": 0,
 | |
|                       "name": "length",
 | |
|                       "start": 0,
 | |
|                       "type": "Identifier"
 | |
|                     },
 | |
|                     "arg": {
 | |
|                       "commentStart": 0,
 | |
|                       "end": 0,
 | |
|                       "moduleId": 0,
 | |
|                       "raw": "12",
 | |
|                       "start": 0,
 | |
|                       "type": "Literal",
 | |
|                       "type": "Literal",
 | |
|                       "value": {
 | |
|                         "value": 12.0,
 | |
|                         "suffix": "None"
 | |
|                       }
 | |
|                     }
 | |
|                   }
 | |
|                 ],
 | |
|                 "callee": {
 | |
|                   "abs_path": false,
 | |
|                   "commentStart": 0,
 | |
|                   "end": 0,
 | |
|                   "moduleId": 0,
 | |
|                   "name": {
 | |
|                     "commentStart": 0,
 | |
|                     "end": 0,
 | |
|                     "moduleId": 0,
 | |
|                     "name": "yLine",
 | |
|                     "start": 0,
 | |
|                     "type": "Identifier"
 | |
|                   },
 | |
|                   "path": [],
 | |
|                   "start": 0,
 | |
|                   "type": "Name"
 | |
|                 },
 | |
|                 "commentStart": 0,
 | |
|                 "end": 0,
 | |
|                 "moduleId": 0,
 | |
|                 "start": 0,
 | |
|                 "type": "CallExpressionKw",
 | |
|                 "type": "CallExpressionKw",
 | |
|                 "unlabeled": null
 | |
|               },
 | |
|               {
 | |
|                 "arguments": [
 | |
|                   {
 | |
|                     "type": "LabeledArg",
 | |
|                     "label": {
 | |
|                       "commentStart": 0,
 | |
|                       "end": 0,
 | |
|                       "moduleId": 0,
 | |
|                       "name": "angle",
 | |
|                       "start": 0,
 | |
|                       "type": "Identifier"
 | |
|                     },
 | |
|                     "arg": {
 | |
|                       "abs_path": false,
 | |
|                       "commentStart": 0,
 | |
|                       "end": 0,
 | |
|                       "moduleId": 0,
 | |
|                       "name": {
 | |
|                         "commentStart": 0,
 | |
|                         "end": 0,
 | |
|                         "moduleId": 0,
 | |
|                         "name": "topTrussAngle",
 | |
|                         "start": 0,
 | |
|                         "type": "Identifier"
 | |
|                       },
 | |
|                       "path": [],
 | |
|                       "start": 0,
 | |
|                       "type": "Name",
 | |
|                       "type": "Name"
 | |
|                     }
 | |
|                   },
 | |
|                   {
 | |
|                     "type": "LabeledArg",
 | |
|                     "label": {
 | |
|                       "commentStart": 0,
 | |
|                       "end": 0,
 | |
|                       "moduleId": 0,
 | |
|                       "name": "endAbsoluteX",
 | |
|                       "start": 0,
 | |
|                       "type": "Identifier"
 | |
|                     },
 | |
|                     "arg": {
 | |
|                       "commentStart": 0,
 | |
|                       "end": 0,
 | |
|                       "moduleId": 0,
 | |
|                       "raw": "0",
 | |
|                       "start": 0,
 | |
|                       "type": "Literal",
 | |
|                       "type": "Literal",
 | |
|                       "value": {
 | |
|                         "value": 0.0,
 | |
|                         "suffix": "None"
 | |
|                       }
 | |
|                     }
 | |
|                   },
 | |
|                   {
 | |
|                     "type": "LabeledArg",
 | |
|                     "label": {
 | |
|                       "commentStart": 0,
 | |
|                       "end": 0,
 | |
|                       "moduleId": 0,
 | |
|                       "name": "tag",
 | |
|                       "start": 0,
 | |
|                       "type": "Identifier"
 | |
|                     },
 | |
|                     "arg": {
 | |
|                       "commentStart": 0,
 | |
|                       "end": 0,
 | |
|                       "moduleId": 0,
 | |
|                       "start": 0,
 | |
|                       "type": "TagDeclarator",
 | |
|                       "type": "TagDeclarator",
 | |
|                       "value": "tag001"
 | |
|                     }
 | |
|                   }
 | |
|                 ],
 | |
|                 "callee": {
 | |
|                   "abs_path": false,
 | |
|                   "commentStart": 0,
 | |
|                   "end": 0,
 | |
|                   "moduleId": 0,
 | |
|                   "name": {
 | |
|                     "commentStart": 0,
 | |
|                     "end": 0,
 | |
|                     "moduleId": 0,
 | |
|                     "name": "angledLine",
 | |
|                     "start": 0,
 | |
|                     "type": "Identifier"
 | |
|                   },
 | |
|                   "path": [],
 | |
|                   "start": 0,
 | |
|                   "type": "Name"
 | |
|                 },
 | |
|                 "commentStart": 0,
 | |
|                 "end": 0,
 | |
|                 "moduleId": 0,
 | |
|                 "start": 0,
 | |
|                 "type": "CallExpressionKw",
 | |
|                 "type": "CallExpressionKw",
 | |
|                 "unlabeled": null
 | |
|               },
 | |
|               {
 | |
|                 "arguments": [
 | |
|                   {
 | |
|                     "type": "LabeledArg",
 | |
|                     "label": {
 | |
|                       "commentStart": 0,
 | |
|                       "end": 0,
 | |
|                       "moduleId": 0,
 | |
|                       "name": "angle",
 | |
|                       "start": 0,
 | |
|                       "type": "Identifier"
 | |
|                     },
 | |
|                     "arg": {
 | |
|                       "argument": {
 | |
|                         "abs_path": false,
 | |
|                         "commentStart": 0,
 | |
|                         "end": 0,
 | |
|                         "moduleId": 0,
 | |
|                         "name": {
 | |
|                           "commentStart": 0,
 | |
|                           "end": 0,
 | |
|                           "moduleId": 0,
 | |
|                           "name": "topTrussAngle",
 | |
|                           "start": 0,
 | |
|                           "type": "Identifier"
 | |
|                         },
 | |
|                         "path": [],
 | |
|                         "start": 0,
 | |
|                         "type": "Name",
 | |
|                         "type": "Name"
 | |
|                       },
 | |
|                       "commentStart": 0,
 | |
|                       "end": 0,
 | |
|                       "moduleId": 0,
 | |
|                       "operator": "-",
 | |
|                       "start": 0,
 | |
|                       "type": "UnaryExpression",
 | |
|                       "type": "UnaryExpression"
 | |
|                     }
 | |
|                   },
 | |
|                   {
 | |
|                     "type": "LabeledArg",
 | |
|                     "label": {
 | |
|                       "commentStart": 0,
 | |
|                       "end": 0,
 | |
|                       "moduleId": 0,
 | |
|                       "name": "endAbsoluteX",
 | |
|                       "start": 0,
 | |
|                       "type": "Identifier"
 | |
|                     },
 | |
|                     "arg": {
 | |
|                       "commentStart": 0,
 | |
|                       "end": 0,
 | |
|                       "left": {
 | |
|                         "abs_path": false,
 | |
|                         "commentStart": 0,
 | |
|                         "end": 0,
 | |
|                         "moduleId": 0,
 | |
|                         "name": {
 | |
|                           "commentStart": 0,
 | |
|                           "end": 0,
 | |
|                           "moduleId": 0,
 | |
|                           "name": "totalWidth",
 | |
|                           "start": 0,
 | |
|                           "type": "Identifier"
 | |
|                         },
 | |
|                         "path": [],
 | |
|                         "start": 0,
 | |
|                         "type": "Name",
 | |
|                         "type": "Name"
 | |
|                       },
 | |
|                       "moduleId": 0,
 | |
|                       "operator": "/",
 | |
|                       "right": {
 | |
|                         "commentStart": 0,
 | |
|                         "end": 0,
 | |
|                         "moduleId": 0,
 | |
|                         "raw": "2",
 | |
|                         "start": 0,
 | |
|                         "type": "Literal",
 | |
|                         "type": "Literal",
 | |
|                         "value": {
 | |
|                           "value": 2.0,
 | |
|                           "suffix": "None"
 | |
|                         }
 | |
|                       },
 | |
|                       "start": 0,
 | |
|                       "type": "BinaryExpression",
 | |
|                       "type": "BinaryExpression"
 | |
|                     }
 | |
|                   },
 | |
|                   {
 | |
|                     "type": "LabeledArg",
 | |
|                     "label": {
 | |
|                       "commentStart": 0,
 | |
|                       "end": 0,
 | |
|                       "moduleId": 0,
 | |
|                       "name": "tag",
 | |
|                       "start": 0,
 | |
|                       "type": "Identifier"
 | |
|                     },
 | |
|                     "arg": {
 | |
|                       "commentStart": 0,
 | |
|                       "end": 0,
 | |
|                       "moduleId": 0,
 | |
|                       "start": 0,
 | |
|                       "type": "TagDeclarator",
 | |
|                       "type": "TagDeclarator",
 | |
|                       "value": "tag002"
 | |
|                     }
 | |
|                   }
 | |
|                 ],
 | |
|                 "callee": {
 | |
|                   "abs_path": false,
 | |
|                   "commentStart": 0,
 | |
|                   "end": 0,
 | |
|                   "moduleId": 0,
 | |
|                   "name": {
 | |
|                     "commentStart": 0,
 | |
|                     "end": 0,
 | |
|                     "moduleId": 0,
 | |
|                     "name": "angledLine",
 | |
|                     "start": 0,
 | |
|                     "type": "Identifier"
 | |
|                   },
 | |
|                   "path": [],
 | |
|                   "start": 0,
 | |
|                   "type": "Name"
 | |
|                 },
 | |
|                 "commentStart": 0,
 | |
|                 "end": 0,
 | |
|                 "moduleId": 0,
 | |
|                 "start": 0,
 | |
|                 "type": "CallExpressionKw",
 | |
|                 "type": "CallExpressionKw",
 | |
|                 "unlabeled": null
 | |
|               },
 | |
|               {
 | |
|                 "arguments": [],
 | |
|                 "callee": {
 | |
|                   "abs_path": false,
 | |
|                   "commentStart": 0,
 | |
|                   "end": 0,
 | |
|                   "moduleId": 0,
 | |
|                   "name": {
 | |
|                     "commentStart": 0,
 | |
|                     "end": 0,
 | |
|                     "moduleId": 0,
 | |
|                     "name": "close",
 | |
|                     "start": 0,
 | |
|                     "type": "Identifier"
 | |
|                   },
 | |
|                   "path": [],
 | |
|                   "start": 0,
 | |
|                   "type": "Name"
 | |
|                 },
 | |
|                 "commentStart": 0,
 | |
|                 "end": 0,
 | |
|                 "moduleId": 0,
 | |
|                 "start": 0,
 | |
|                 "type": "CallExpressionKw",
 | |
|                 "type": "CallExpressionKw",
 | |
|                 "unlabeled": null
 | |
|               }
 | |
|             ],
 | |
|             "commentStart": 0,
 | |
|             "end": 0,
 | |
|             "moduleId": 0,
 | |
|             "nonCodeMeta": {
 | |
|               "nonCodeNodes": {
 | |
|                 "5": [
 | |
|                   {
 | |
|                     "commentStart": 0,
 | |
|                     "end": 0,
 | |
|                     "moduleId": 0,
 | |
|                     "start": 0,
 | |
|                     "type": "NonCodeNode",
 | |
|                     "value": {
 | |
|                       "type": "newLineBlockComment",
 | |
|                       "value": "Create two holes in the top frame sketch to create the center beam",
 | |
|                       "style": "line"
 | |
|                     }
 | |
|                   }
 | |
|                 ]
 | |
|               },
 | |
|               "startNodes": []
 | |
|             },
 | |
|             "start": 0,
 | |
|             "type": "PipeExpression",
 | |
|             "type": "PipeExpression"
 | |
|           },
 | |
|           "moduleId": 0,
 | |
|           "start": 0,
 | |
|           "type": "VariableDeclarator"
 | |
|         },
 | |
|         "end": 0,
 | |
|         "kind": "const",
 | |
|         "moduleId": 0,
 | |
|         "start": 0,
 | |
|         "type": "VariableDeclaration",
 | |
|         "type": "VariableDeclaration"
 | |
|       },
 | |
|       {
 | |
|         "commentStart": 0,
 | |
|         "declaration": {
 | |
|           "commentStart": 0,
 | |
|           "end": 0,
 | |
|           "id": {
 | |
|             "commentStart": 0,
 | |
|             "end": 0,
 | |
|             "moduleId": 0,
 | |
|             "name": "profile002",
 | |
|             "start": 0,
 | |
|             "type": "Identifier"
 | |
|           },
 | |
|           "init": {
 | |
|             "body": [
 | |
|               {
 | |
|                 "arguments": [
 | |
|                   {
 | |
|                     "type": "LabeledArg",
 | |
|                     "label": {
 | |
|                       "commentStart": 0,
 | |
|                       "end": 0,
 | |
|                       "moduleId": 0,
 | |
|                       "name": "at",
 | |
|                       "start": 0,
 | |
|                       "type": "Identifier"
 | |
|                     },
 | |
|                     "arg": {
 | |
|                       "commentStart": 0,
 | |
|                       "elements": [
 | |
|                         {
 | |
|                           "commentStart": 0,
 | |
|                           "end": 0,
 | |
|                           "left": {
 | |
|                             "commentStart": 0,
 | |
|                             "end": 0,
 | |
|                             "left": {
 | |
|                               "abs_path": false,
 | |
|                               "commentStart": 0,
 | |
|                               "end": 0,
 | |
|                               "moduleId": 0,
 | |
|                               "name": {
 | |
|                                 "commentStart": 0,
 | |
|                                 "end": 0,
 | |
|                                 "moduleId": 0,
 | |
|                                 "name": "totalWidth",
 | |
|                                 "start": 0,
 | |
|                                 "type": "Identifier"
 | |
|                               },
 | |
|                               "path": [],
 | |
|                               "start": 0,
 | |
|                               "type": "Name",
 | |
|                               "type": "Name"
 | |
|                             },
 | |
|                             "moduleId": 0,
 | |
|                             "operator": "/",
 | |
|                             "right": {
 | |
|                               "commentStart": 0,
 | |
|                               "end": 0,
 | |
|                               "moduleId": 0,
 | |
|                               "raw": "2",
 | |
|                               "start": 0,
 | |
|                               "type": "Literal",
 | |
|                               "type": "Literal",
 | |
|                               "value": {
 | |
|                                 "value": 2.0,
 | |
|                                 "suffix": "None"
 | |
|                               }
 | |
|                             },
 | |
|                             "start": 0,
 | |
|                             "type": "BinaryExpression",
 | |
|                             "type": "BinaryExpression"
 | |
|                           },
 | |
|                           "moduleId": 0,
 | |
|                           "operator": "-",
 | |
|                           "right": {
 | |
|                             "abs_path": false,
 | |
|                             "commentStart": 0,
 | |
|                             "end": 0,
 | |
|                             "moduleId": 0,
 | |
|                             "name": {
 | |
|                               "commentStart": 0,
 | |
|                               "end": 0,
 | |
|                               "moduleId": 0,
 | |
|                               "name": "thickness",
 | |
|                               "start": 0,
 | |
|                               "type": "Identifier"
 | |
|                             },
 | |
|                             "path": [],
 | |
|                             "start": 0,
 | |
|                             "type": "Name",
 | |
|                             "type": "Name"
 | |
|                           },
 | |
|                           "start": 0,
 | |
|                           "type": "BinaryExpression",
 | |
|                           "type": "BinaryExpression"
 | |
|                         },
 | |
|                         {
 | |
|                           "abs_path": false,
 | |
|                           "commentStart": 0,
 | |
|                           "end": 0,
 | |
|                           "moduleId": 0,
 | |
|                           "name": {
 | |
|                             "commentStart": 0,
 | |
|                             "end": 0,
 | |
|                             "moduleId": 0,
 | |
|                             "name": "thickness",
 | |
|                             "start": 0,
 | |
|                             "type": "Identifier"
 | |
|                           },
 | |
|                           "path": [],
 | |
|                           "start": 0,
 | |
|                           "type": "Name",
 | |
|                           "type": "Name"
 | |
|                         }
 | |
|                       ],
 | |
|                       "end": 0,
 | |
|                       "moduleId": 0,
 | |
|                       "start": 0,
 | |
|                       "type": "ArrayExpression",
 | |
|                       "type": "ArrayExpression"
 | |
|                     }
 | |
|                   }
 | |
|                 ],
 | |
|                 "callee": {
 | |
|                   "abs_path": false,
 | |
|                   "commentStart": 0,
 | |
|                   "end": 0,
 | |
|                   "moduleId": 0,
 | |
|                   "name": {
 | |
|                     "commentStart": 0,
 | |
|                     "end": 0,
 | |
|                     "moduleId": 0,
 | |
|                     "name": "startProfile",
 | |
|                     "start": 0,
 | |
|                     "type": "Identifier"
 | |
|                   },
 | |
|                   "path": [],
 | |
|                   "start": 0,
 | |
|                   "type": "Name"
 | |
|                 },
 | |
|                 "commentStart": 0,
 | |
|                 "end": 0,
 | |
|                 "moduleId": 0,
 | |
|                 "start": 0,
 | |
|                 "type": "CallExpressionKw",
 | |
|                 "type": "CallExpressionKw",
 | |
|                 "unlabeled": {
 | |
|                   "abs_path": false,
 | |
|                   "commentStart": 0,
 | |
|                   "end": 0,
 | |
|                   "moduleId": 0,
 | |
|                   "name": {
 | |
|                     "commentStart": 0,
 | |
|                     "end": 0,
 | |
|                     "moduleId": 0,
 | |
|                     "name": "topFrameSketch",
 | |
|                     "start": 0,
 | |
|                     "type": "Identifier"
 | |
|                   },
 | |
|                   "path": [],
 | |
|                   "start": 0,
 | |
|                   "type": "Name",
 | |
|                   "type": "Name"
 | |
|                 }
 | |
|               },
 | |
|               {
 | |
|                 "arguments": [
 | |
|                   {
 | |
|                     "type": "LabeledArg",
 | |
|                     "label": {
 | |
|                       "commentStart": 0,
 | |
|                       "end": 0,
 | |
|                       "moduleId": 0,
 | |
|                       "name": "endAbsolute",
 | |
|                       "start": 0,
 | |
|                       "type": "Identifier"
 | |
|                     },
 | |
|                     "arg": {
 | |
|                       "commentStart": 0,
 | |
|                       "end": 0,
 | |
|                       "left": {
 | |
|                         "abs_path": false,
 | |
|                         "commentStart": 0,
 | |
|                         "end": 0,
 | |
|                         "moduleId": 0,
 | |
|                         "name": {
 | |
|                           "commentStart": 0,
 | |
|                           "end": 0,
 | |
|                           "moduleId": 0,
 | |
|                           "name": "thickness",
 | |
|                           "start": 0,
 | |
|                           "type": "Identifier"
 | |
|                         },
 | |
|                         "path": [],
 | |
|                         "start": 0,
 | |
|                         "type": "Name",
 | |
|                         "type": "Name"
 | |
|                       },
 | |
|                       "moduleId": 0,
 | |
|                       "operator": "/",
 | |
|                       "right": {
 | |
|                         "commentStart": 0,
 | |
|                         "end": 0,
 | |
|                         "moduleId": 0,
 | |
|                         "raw": "2",
 | |
|                         "start": 0,
 | |
|                         "type": "Literal",
 | |
|                         "type": "Literal",
 | |
|                         "value": {
 | |
|                           "value": 2.0,
 | |
|                           "suffix": "None"
 | |
|                         }
 | |
|                       },
 | |
|                       "start": 0,
 | |
|                       "type": "BinaryExpression",
 | |
|                       "type": "BinaryExpression"
 | |
|                     }
 | |
|                   }
 | |
|                 ],
 | |
|                 "callee": {
 | |
|                   "abs_path": false,
 | |
|                   "commentStart": 0,
 | |
|                   "end": 0,
 | |
|                   "moduleId": 0,
 | |
|                   "name": {
 | |
|                     "commentStart": 0,
 | |
|                     "end": 0,
 | |
|                     "moduleId": 0,
 | |
|                     "name": "xLine",
 | |
|                     "start": 0,
 | |
|                     "type": "Identifier"
 | |
|                   },
 | |
|                   "path": [],
 | |
|                   "start": 0,
 | |
|                   "type": "Name"
 | |
|                 },
 | |
|                 "commentStart": 0,
 | |
|                 "end": 0,
 | |
|                 "moduleId": 0,
 | |
|                 "start": 0,
 | |
|                 "type": "CallExpressionKw",
 | |
|                 "type": "CallExpressionKw",
 | |
|                 "unlabeled": null
 | |
|               },
 | |
|               {
 | |
|                 "arguments": [
 | |
|                   {
 | |
|                     "type": "LabeledArg",
 | |
|                     "label": {
 | |
|                       "commentStart": 0,
 | |
|                       "end": 0,
 | |
|                       "moduleId": 0,
 | |
|                       "name": "endAbsolute",
 | |
|                       "start": 0,
 | |
|                       "type": "Identifier"
 | |
|                     },
 | |
|                     "arg": {
 | |
|                       "commentStart": 0,
 | |
|                       "end": 0,
 | |
|                       "left": {
 | |
|                         "arguments": [],
 | |
|                         "callee": {
 | |
|                           "abs_path": false,
 | |
|                           "commentStart": 0,
 | |
|                           "end": 0,
 | |
|                           "moduleId": 0,
 | |
|                           "name": {
 | |
|                             "commentStart": 0,
 | |
|                             "end": 0,
 | |
|                             "moduleId": 0,
 | |
|                             "name": "segEndY",
 | |
|                             "start": 0,
 | |
|                             "type": "Identifier"
 | |
|                           },
 | |
|                           "path": [],
 | |
|                           "start": 0,
 | |
|                           "type": "Name"
 | |
|                         },
 | |
|                         "commentStart": 0,
 | |
|                         "end": 0,
 | |
|                         "moduleId": 0,
 | |
|                         "start": 0,
 | |
|                         "type": "CallExpressionKw",
 | |
|                         "type": "CallExpressionKw",
 | |
|                         "unlabeled": {
 | |
|                           "abs_path": false,
 | |
|                           "commentStart": 0,
 | |
|                           "end": 0,
 | |
|                           "moduleId": 0,
 | |
|                           "name": {
 | |
|                             "commentStart": 0,
 | |
|                             "end": 0,
 | |
|                             "moduleId": 0,
 | |
|                             "name": "tag001",
 | |
|                             "start": 0,
 | |
|                             "type": "Identifier"
 | |
|                           },
 | |
|                           "path": [],
 | |
|                           "start": 0,
 | |
|                           "type": "Name",
 | |
|                           "type": "Name"
 | |
|                         }
 | |
|                       },
 | |
|                       "moduleId": 0,
 | |
|                       "operator": "-",
 | |
|                       "right": {
 | |
|                         "abs_path": false,
 | |
|                         "commentStart": 0,
 | |
|                         "end": 0,
 | |
|                         "moduleId": 0,
 | |
|                         "name": {
 | |
|                           "commentStart": 0,
 | |
|                           "end": 0,
 | |
|                           "moduleId": 0,
 | |
|                           "name": "thickness",
 | |
|                           "start": 0,
 | |
|                           "type": "Identifier"
 | |
|                         },
 | |
|                         "path": [],
 | |
|                         "start": 0,
 | |
|                         "type": "Name",
 | |
|                         "type": "Name"
 | |
|                       },
 | |
|                       "start": 0,
 | |
|                       "type": "BinaryExpression",
 | |
|                       "type": "BinaryExpression"
 | |
|                     }
 | |
|                   }
 | |
|                 ],
 | |
|                 "callee": {
 | |
|                   "abs_path": false,
 | |
|                   "commentStart": 0,
 | |
|                   "end": 0,
 | |
|                   "moduleId": 0,
 | |
|                   "name": {
 | |
|                     "commentStart": 0,
 | |
|                     "end": 0,
 | |
|                     "moduleId": 0,
 | |
|                     "name": "yLine",
 | |
|                     "start": 0,
 | |
|                     "type": "Identifier"
 | |
|                   },
 | |
|                   "path": [],
 | |
|                   "start": 0,
 | |
|                   "type": "Name"
 | |
|                 },
 | |
|                 "commentStart": 0,
 | |
|                 "end": 0,
 | |
|                 "moduleId": 0,
 | |
|                 "start": 0,
 | |
|                 "type": "CallExpressionKw",
 | |
|                 "type": "CallExpressionKw",
 | |
|                 "unlabeled": null
 | |
|               },
 | |
|               {
 | |
|                 "arguments": [
 | |
|                   {
 | |
|                     "type": "LabeledArg",
 | |
|                     "label": {
 | |
|                       "commentStart": 0,
 | |
|                       "end": 0,
 | |
|                       "moduleId": 0,
 | |
|                       "name": "endAbsoluteX",
 | |
|                       "start": 0,
 | |
|                       "type": "Identifier"
 | |
|                     },
 | |
|                     "arg": {
 | |
|                       "arguments": [],
 | |
|                       "callee": {
 | |
|                         "abs_path": false,
 | |
|                         "commentStart": 0,
 | |
|                         "end": 0,
 | |
|                         "moduleId": 0,
 | |
|                         "name": {
 | |
|                           "commentStart": 0,
 | |
|                           "end": 0,
 | |
|                           "moduleId": 0,
 | |
|                           "name": "profileStartX",
 | |
|                           "start": 0,
 | |
|                           "type": "Identifier"
 | |
|                         },
 | |
|                         "path": [],
 | |
|                         "start": 0,
 | |
|                         "type": "Name"
 | |
|                       },
 | |
|                       "commentStart": 0,
 | |
|                       "end": 0,
 | |
|                       "moduleId": 0,
 | |
|                       "start": 0,
 | |
|                       "type": "CallExpressionKw",
 | |
|                       "type": "CallExpressionKw",
 | |
|                       "unlabeled": {
 | |
|                         "commentStart": 0,
 | |
|                         "end": 0,
 | |
|                         "moduleId": 0,
 | |
|                         "start": 0,
 | |
|                         "type": "PipeSubstitution",
 | |
|                         "type": "PipeSubstitution"
 | |
|                       }
 | |
|                     }
 | |
|                   },
 | |
|                   {
 | |
|                     "type": "LabeledArg",
 | |
|                     "label": {
 | |
|                       "commentStart": 0,
 | |
|                       "end": 0,
 | |
|                       "moduleId": 0,
 | |
|                       "name": "angle",
 | |
|                       "start": 0,
 | |
|                       "type": "Identifier"
 | |
|                     },
 | |
|                     "arg": {
 | |
|                       "argument": {
 | |
|                         "abs_path": false,
 | |
|                         "commentStart": 0,
 | |
|                         "end": 0,
 | |
|                         "moduleId": 0,
 | |
|                         "name": {
 | |
|                           "commentStart": 0,
 | |
|                           "end": 0,
 | |
|                           "moduleId": 0,
 | |
|                           "name": "topTrussAngle",
 | |
|                           "start": 0,
 | |
|                           "type": "Identifier"
 | |
|                         },
 | |
|                         "path": [],
 | |
|                         "start": 0,
 | |
|                         "type": "Name",
 | |
|                         "type": "Name"
 | |
|                       },
 | |
|                       "commentStart": 0,
 | |
|                       "end": 0,
 | |
|                       "moduleId": 0,
 | |
|                       "operator": "-",
 | |
|                       "start": 0,
 | |
|                       "type": "UnaryExpression",
 | |
|                       "type": "UnaryExpression"
 | |
|                     }
 | |
|                   }
 | |
|                 ],
 | |
|                 "callee": {
 | |
|                   "abs_path": false,
 | |
|                   "commentStart": 0,
 | |
|                   "end": 0,
 | |
|                   "moduleId": 0,
 | |
|                   "name": {
 | |
|                     "commentStart": 0,
 | |
|                     "end": 0,
 | |
|                     "moduleId": 0,
 | |
|                     "name": "angledLine",
 | |
|                     "start": 0,
 | |
|                     "type": "Identifier"
 | |
|                   },
 | |
|                   "path": [],
 | |
|                   "start": 0,
 | |
|                   "type": "Name"
 | |
|                 },
 | |
|                 "commentStart": 0,
 | |
|                 "end": 0,
 | |
|                 "moduleId": 0,
 | |
|                 "start": 0,
 | |
|                 "type": "CallExpressionKw",
 | |
|                 "type": "CallExpressionKw",
 | |
|                 "unlabeled": null
 | |
|               },
 | |
|               {
 | |
|                 "arguments": [],
 | |
|                 "callee": {
 | |
|                   "abs_path": false,
 | |
|                   "commentStart": 0,
 | |
|                   "end": 0,
 | |
|                   "moduleId": 0,
 | |
|                   "name": {
 | |
|                     "commentStart": 0,
 | |
|                     "end": 0,
 | |
|                     "moduleId": 0,
 | |
|                     "name": "close",
 | |
|                     "start": 0,
 | |
|                     "type": "Identifier"
 | |
|                   },
 | |
|                   "path": [],
 | |
|                   "start": 0,
 | |
|                   "type": "Name"
 | |
|                 },
 | |
|                 "commentStart": 0,
 | |
|                 "end": 0,
 | |
|                 "moduleId": 0,
 | |
|                 "start": 0,
 | |
|                 "type": "CallExpressionKw",
 | |
|                 "type": "CallExpressionKw",
 | |
|                 "unlabeled": {
 | |
|                   "commentStart": 0,
 | |
|                   "end": 0,
 | |
|                   "moduleId": 0,
 | |
|                   "start": 0,
 | |
|                   "type": "PipeSubstitution",
 | |
|                   "type": "PipeSubstitution"
 | |
|                 }
 | |
|               }
 | |
|             ],
 | |
|             "commentStart": 0,
 | |
|             "end": 0,
 | |
|             "moduleId": 0,
 | |
|             "start": 0,
 | |
|             "type": "PipeExpression",
 | |
|             "type": "PipeExpression"
 | |
|           },
 | |
|           "moduleId": 0,
 | |
|           "start": 0,
 | |
|           "type": "VariableDeclarator"
 | |
|         },
 | |
|         "end": 0,
 | |
|         "kind": "const",
 | |
|         "moduleId": 0,
 | |
|         "start": 0,
 | |
|         "type": "VariableDeclaration",
 | |
|         "type": "VariableDeclaration"
 | |
|       },
 | |
|       {
 | |
|         "commentStart": 0,
 | |
|         "declaration": {
 | |
|           "commentStart": 0,
 | |
|           "end": 0,
 | |
|           "id": {
 | |
|             "commentStart": 0,
 | |
|             "end": 0,
 | |
|             "moduleId": 0,
 | |
|             "name": "profile003",
 | |
|             "start": 0,
 | |
|             "type": "Identifier"
 | |
|           },
 | |
|           "init": {
 | |
|             "body": [
 | |
|               {
 | |
|                 "arguments": [
 | |
|                   {
 | |
|                     "type": "LabeledArg",
 | |
|                     "label": {
 | |
|                       "commentStart": 0,
 | |
|                       "end": 0,
 | |
|                       "moduleId": 0,
 | |
|                       "name": "at",
 | |
|                       "start": 0,
 | |
|                       "type": "Identifier"
 | |
|                     },
 | |
|                     "arg": {
 | |
|                       "commentStart": 0,
 | |
|                       "elements": [
 | |
|                         {
 | |
|                           "commentStart": 0,
 | |
|                           "end": 0,
 | |
|                           "left": {
 | |
|                             "commentStart": 0,
 | |
|                             "end": 0,
 | |
|                             "left": {
 | |
|                               "argument": {
 | |
|                                 "abs_path": false,
 | |
|                                 "commentStart": 0,
 | |
|                                 "end": 0,
 | |
|                                 "moduleId": 0,
 | |
|                                 "name": {
 | |
|                                   "commentStart": 0,
 | |
|                                   "end": 0,
 | |
|                                   "moduleId": 0,
 | |
|                                   "name": "totalWidth",
 | |
|                                   "start": 0,
 | |
|                                   "type": "Identifier"
 | |
|                                 },
 | |
|                                 "path": [],
 | |
|                                 "start": 0,
 | |
|                                 "type": "Name",
 | |
|                                 "type": "Name"
 | |
|                               },
 | |
|                               "commentStart": 0,
 | |
|                               "end": 0,
 | |
|                               "moduleId": 0,
 | |
|                               "operator": "-",
 | |
|                               "start": 0,
 | |
|                               "type": "UnaryExpression",
 | |
|                               "type": "UnaryExpression"
 | |
|                             },
 | |
|                             "moduleId": 0,
 | |
|                             "operator": "/",
 | |
|                             "right": {
 | |
|                               "commentStart": 0,
 | |
|                               "end": 0,
 | |
|                               "moduleId": 0,
 | |
|                               "raw": "2",
 | |
|                               "start": 0,
 | |
|                               "type": "Literal",
 | |
|                               "type": "Literal",
 | |
|                               "value": {
 | |
|                                 "value": 2.0,
 | |
|                                 "suffix": "None"
 | |
|                               }
 | |
|                             },
 | |
|                             "start": 0,
 | |
|                             "type": "BinaryExpression",
 | |
|                             "type": "BinaryExpression"
 | |
|                           },
 | |
|                           "moduleId": 0,
 | |
|                           "operator": "+",
 | |
|                           "right": {
 | |
|                             "abs_path": false,
 | |
|                             "commentStart": 0,
 | |
|                             "end": 0,
 | |
|                             "moduleId": 0,
 | |
|                             "name": {
 | |
|                               "commentStart": 0,
 | |
|                               "end": 0,
 | |
|                               "moduleId": 0,
 | |
|                               "name": "thickness",
 | |
|                               "start": 0,
 | |
|                               "type": "Identifier"
 | |
|                             },
 | |
|                             "path": [],
 | |
|                             "start": 0,
 | |
|                             "type": "Name",
 | |
|                             "type": "Name"
 | |
|                           },
 | |
|                           "start": 0,
 | |
|                           "type": "BinaryExpression",
 | |
|                           "type": "BinaryExpression"
 | |
|                         },
 | |
|                         {
 | |
|                           "abs_path": false,
 | |
|                           "commentStart": 0,
 | |
|                           "end": 0,
 | |
|                           "moduleId": 0,
 | |
|                           "name": {
 | |
|                             "commentStart": 0,
 | |
|                             "end": 0,
 | |
|                             "moduleId": 0,
 | |
|                             "name": "thickness",
 | |
|                             "start": 0,
 | |
|                             "type": "Identifier"
 | |
|                           },
 | |
|                           "path": [],
 | |
|                           "start": 0,
 | |
|                           "type": "Name",
 | |
|                           "type": "Name"
 | |
|                         }
 | |
|                       ],
 | |
|                       "end": 0,
 | |
|                       "moduleId": 0,
 | |
|                       "start": 0,
 | |
|                       "type": "ArrayExpression",
 | |
|                       "type": "ArrayExpression"
 | |
|                     }
 | |
|                   }
 | |
|                 ],
 | |
|                 "callee": {
 | |
|                   "abs_path": false,
 | |
|                   "commentStart": 0,
 | |
|                   "end": 0,
 | |
|                   "moduleId": 0,
 | |
|                   "name": {
 | |
|                     "commentStart": 0,
 | |
|                     "end": 0,
 | |
|                     "moduleId": 0,
 | |
|                     "name": "startProfile",
 | |
|                     "start": 0,
 | |
|                     "type": "Identifier"
 | |
|                   },
 | |
|                   "path": [],
 | |
|                   "start": 0,
 | |
|                   "type": "Name"
 | |
|                 },
 | |
|                 "commentStart": 0,
 | |
|                 "end": 0,
 | |
|                 "moduleId": 0,
 | |
|                 "start": 0,
 | |
|                 "type": "CallExpressionKw",
 | |
|                 "type": "CallExpressionKw",
 | |
|                 "unlabeled": {
 | |
|                   "abs_path": false,
 | |
|                   "commentStart": 0,
 | |
|                   "end": 0,
 | |
|                   "moduleId": 0,
 | |
|                   "name": {
 | |
|                     "commentStart": 0,
 | |
|                     "end": 0,
 | |
|                     "moduleId": 0,
 | |
|                     "name": "topFrameSketch",
 | |
|                     "start": 0,
 | |
|                     "type": "Identifier"
 | |
|                   },
 | |
|                   "path": [],
 | |
|                   "start": 0,
 | |
|                   "type": "Name",
 | |
|                   "type": "Name"
 | |
|                 }
 | |
|               },
 | |
|               {
 | |
|                 "arguments": [
 | |
|                   {
 | |
|                     "type": "LabeledArg",
 | |
|                     "label": {
 | |
|                       "commentStart": 0,
 | |
|                       "end": 0,
 | |
|                       "moduleId": 0,
 | |
|                       "name": "endAbsolute",
 | |
|                       "start": 0,
 | |
|                       "type": "Identifier"
 | |
|                     },
 | |
|                     "arg": {
 | |
|                       "commentStart": 0,
 | |
|                       "end": 0,
 | |
|                       "left": {
 | |
|                         "argument": {
 | |
|                           "abs_path": false,
 | |
|                           "commentStart": 0,
 | |
|                           "end": 0,
 | |
|                           "moduleId": 0,
 | |
|                           "name": {
 | |
|                             "commentStart": 0,
 | |
|                             "end": 0,
 | |
|                             "moduleId": 0,
 | |
|                             "name": "thickness",
 | |
|                             "start": 0,
 | |
|                             "type": "Identifier"
 | |
|                           },
 | |
|                           "path": [],
 | |
|                           "start": 0,
 | |
|                           "type": "Name",
 | |
|                           "type": "Name"
 | |
|                         },
 | |
|                         "commentStart": 0,
 | |
|                         "end": 0,
 | |
|                         "moduleId": 0,
 | |
|                         "operator": "-",
 | |
|                         "start": 0,
 | |
|                         "type": "UnaryExpression",
 | |
|                         "type": "UnaryExpression"
 | |
|                       },
 | |
|                       "moduleId": 0,
 | |
|                       "operator": "/",
 | |
|                       "right": {
 | |
|                         "commentStart": 0,
 | |
|                         "end": 0,
 | |
|                         "moduleId": 0,
 | |
|                         "raw": "2",
 | |
|                         "start": 0,
 | |
|                         "type": "Literal",
 | |
|                         "type": "Literal",
 | |
|                         "value": {
 | |
|                           "value": 2.0,
 | |
|                           "suffix": "None"
 | |
|                         }
 | |
|                       },
 | |
|                       "start": 0,
 | |
|                       "type": "BinaryExpression",
 | |
|                       "type": "BinaryExpression"
 | |
|                     }
 | |
|                   }
 | |
|                 ],
 | |
|                 "callee": {
 | |
|                   "abs_path": false,
 | |
|                   "commentStart": 0,
 | |
|                   "end": 0,
 | |
|                   "moduleId": 0,
 | |
|                   "name": {
 | |
|                     "commentStart": 0,
 | |
|                     "end": 0,
 | |
|                     "moduleId": 0,
 | |
|                     "name": "xLine",
 | |
|                     "start": 0,
 | |
|                     "type": "Identifier"
 | |
|                   },
 | |
|                   "path": [],
 | |
|                   "start": 0,
 | |
|                   "type": "Name"
 | |
|                 },
 | |
|                 "commentStart": 0,
 | |
|                 "end": 0,
 | |
|                 "moduleId": 0,
 | |
|                 "start": 0,
 | |
|                 "type": "CallExpressionKw",
 | |
|                 "type": "CallExpressionKw",
 | |
|                 "unlabeled": null
 | |
|               },
 | |
|               {
 | |
|                 "arguments": [
 | |
|                   {
 | |
|                     "type": "LabeledArg",
 | |
|                     "label": {
 | |
|                       "commentStart": 0,
 | |
|                       "end": 0,
 | |
|                       "moduleId": 0,
 | |
|                       "name": "endAbsolute",
 | |
|                       "start": 0,
 | |
|                       "type": "Identifier"
 | |
|                     },
 | |
|                     "arg": {
 | |
|                       "commentStart": 0,
 | |
|                       "end": 0,
 | |
|                       "left": {
 | |
|                         "arguments": [],
 | |
|                         "callee": {
 | |
|                           "abs_path": false,
 | |
|                           "commentStart": 0,
 | |
|                           "end": 0,
 | |
|                           "moduleId": 0,
 | |
|                           "name": {
 | |
|                             "commentStart": 0,
 | |
|                             "end": 0,
 | |
|                             "moduleId": 0,
 | |
|                             "name": "segEndY",
 | |
|                             "start": 0,
 | |
|                             "type": "Identifier"
 | |
|                           },
 | |
|                           "path": [],
 | |
|                           "start": 0,
 | |
|                           "type": "Name"
 | |
|                         },
 | |
|                         "commentStart": 0,
 | |
|                         "end": 0,
 | |
|                         "moduleId": 0,
 | |
|                         "start": 0,
 | |
|                         "type": "CallExpressionKw",
 | |
|                         "type": "CallExpressionKw",
 | |
|                         "unlabeled": {
 | |
|                           "abs_path": false,
 | |
|                           "commentStart": 0,
 | |
|                           "end": 0,
 | |
|                           "moduleId": 0,
 | |
|                           "name": {
 | |
|                             "commentStart": 0,
 | |
|                             "end": 0,
 | |
|                             "moduleId": 0,
 | |
|                             "name": "tag001",
 | |
|                             "start": 0,
 | |
|                             "type": "Identifier"
 | |
|                           },
 | |
|                           "path": [],
 | |
|                           "start": 0,
 | |
|                           "type": "Name",
 | |
|                           "type": "Name"
 | |
|                         }
 | |
|                       },
 | |
|                       "moduleId": 0,
 | |
|                       "operator": "-",
 | |
|                       "right": {
 | |
|                         "abs_path": false,
 | |
|                         "commentStart": 0,
 | |
|                         "end": 0,
 | |
|                         "moduleId": 0,
 | |
|                         "name": {
 | |
|                           "commentStart": 0,
 | |
|                           "end": 0,
 | |
|                           "moduleId": 0,
 | |
|                           "name": "thickness",
 | |
|                           "start": 0,
 | |
|                           "type": "Identifier"
 | |
|                         },
 | |
|                         "path": [],
 | |
|                         "start": 0,
 | |
|                         "type": "Name",
 | |
|                         "type": "Name"
 | |
|                       },
 | |
|                       "start": 0,
 | |
|                       "type": "BinaryExpression",
 | |
|                       "type": "BinaryExpression"
 | |
|                     }
 | |
|                   }
 | |
|                 ],
 | |
|                 "callee": {
 | |
|                   "abs_path": false,
 | |
|                   "commentStart": 0,
 | |
|                   "end": 0,
 | |
|                   "moduleId": 0,
 | |
|                   "name": {
 | |
|                     "commentStart": 0,
 | |
|                     "end": 0,
 | |
|                     "moduleId": 0,
 | |
|                     "name": "yLine",
 | |
|                     "start": 0,
 | |
|                     "type": "Identifier"
 | |
|                   },
 | |
|                   "path": [],
 | |
|                   "start": 0,
 | |
|                   "type": "Name"
 | |
|                 },
 | |
|                 "commentStart": 0,
 | |
|                 "end": 0,
 | |
|                 "moduleId": 0,
 | |
|                 "start": 0,
 | |
|                 "type": "CallExpressionKw",
 | |
|                 "type": "CallExpressionKw",
 | |
|                 "unlabeled": null
 | |
|               },
 | |
|               {
 | |
|                 "arguments": [
 | |
|                   {
 | |
|                     "type": "LabeledArg",
 | |
|                     "label": {
 | |
|                       "commentStart": 0,
 | |
|                       "end": 0,
 | |
|                       "moduleId": 0,
 | |
|                       "name": "endAbsoluteX",
 | |
|                       "start": 0,
 | |
|                       "type": "Identifier"
 | |
|                     },
 | |
|                     "arg": {
 | |
|                       "arguments": [],
 | |
|                       "callee": {
 | |
|                         "abs_path": false,
 | |
|                         "commentStart": 0,
 | |
|                         "end": 0,
 | |
|                         "moduleId": 0,
 | |
|                         "name": {
 | |
|                           "commentStart": 0,
 | |
|                           "end": 0,
 | |
|                           "moduleId": 0,
 | |
|                           "name": "profileStartX",
 | |
|                           "start": 0,
 | |
|                           "type": "Identifier"
 | |
|                         },
 | |
|                         "path": [],
 | |
|                         "start": 0,
 | |
|                         "type": "Name"
 | |
|                       },
 | |
|                       "commentStart": 0,
 | |
|                       "end": 0,
 | |
|                       "moduleId": 0,
 | |
|                       "start": 0,
 | |
|                       "type": "CallExpressionKw",
 | |
|                       "type": "CallExpressionKw",
 | |
|                       "unlabeled": {
 | |
|                         "commentStart": 0,
 | |
|                         "end": 0,
 | |
|                         "moduleId": 0,
 | |
|                         "start": 0,
 | |
|                         "type": "PipeSubstitution",
 | |
|                         "type": "PipeSubstitution"
 | |
|                       }
 | |
|                     }
 | |
|                   },
 | |
|                   {
 | |
|                     "type": "LabeledArg",
 | |
|                     "label": {
 | |
|                       "commentStart": 0,
 | |
|                       "end": 0,
 | |
|                       "moduleId": 0,
 | |
|                       "name": "angle",
 | |
|                       "start": 0,
 | |
|                       "type": "Identifier"
 | |
|                     },
 | |
|                     "arg": {
 | |
|                       "commentStart": 0,
 | |
|                       "end": 0,
 | |
|                       "left": {
 | |
|                         "commentStart": 0,
 | |
|                         "end": 0,
 | |
|                         "moduleId": 0,
 | |
|                         "raw": "180",
 | |
|                         "start": 0,
 | |
|                         "type": "Literal",
 | |
|                         "type": "Literal",
 | |
|                         "value": {
 | |
|                           "value": 180.0,
 | |
|                           "suffix": "None"
 | |
|                         }
 | |
|                       },
 | |
|                       "moduleId": 0,
 | |
|                       "operator": "+",
 | |
|                       "right": {
 | |
|                         "abs_path": false,
 | |
|                         "commentStart": 0,
 | |
|                         "end": 0,
 | |
|                         "moduleId": 0,
 | |
|                         "name": {
 | |
|                           "commentStart": 0,
 | |
|                           "end": 0,
 | |
|                           "moduleId": 0,
 | |
|                           "name": "topTrussAngle",
 | |
|                           "start": 0,
 | |
|                           "type": "Identifier"
 | |
|                         },
 | |
|                         "path": [],
 | |
|                         "start": 0,
 | |
|                         "type": "Name",
 | |
|                         "type": "Name"
 | |
|                       },
 | |
|                       "start": 0,
 | |
|                       "type": "BinaryExpression",
 | |
|                       "type": "BinaryExpression"
 | |
|                     }
 | |
|                   }
 | |
|                 ],
 | |
|                 "callee": {
 | |
|                   "abs_path": false,
 | |
|                   "commentStart": 0,
 | |
|                   "end": 0,
 | |
|                   "moduleId": 0,
 | |
|                   "name": {
 | |
|                     "commentStart": 0,
 | |
|                     "end": 0,
 | |
|                     "moduleId": 0,
 | |
|                     "name": "angledLine",
 | |
|                     "start": 0,
 | |
|                     "type": "Identifier"
 | |
|                   },
 | |
|                   "path": [],
 | |
|                   "start": 0,
 | |
|                   "type": "Name"
 | |
|                 },
 | |
|                 "commentStart": 0,
 | |
|                 "end": 0,
 | |
|                 "moduleId": 0,
 | |
|                 "start": 0,
 | |
|                 "type": "CallExpressionKw",
 | |
|                 "type": "CallExpressionKw",
 | |
|                 "unlabeled": null
 | |
|               },
 | |
|               {
 | |
|                 "arguments": [],
 | |
|                 "callee": {
 | |
|                   "abs_path": false,
 | |
|                   "commentStart": 0,
 | |
|                   "end": 0,
 | |
|                   "moduleId": 0,
 | |
|                   "name": {
 | |
|                     "commentStart": 0,
 | |
|                     "end": 0,
 | |
|                     "moduleId": 0,
 | |
|                     "name": "close",
 | |
|                     "start": 0,
 | |
|                     "type": "Identifier"
 | |
|                   },
 | |
|                   "path": [],
 | |
|                   "start": 0,
 | |
|                   "type": "Name"
 | |
|                 },
 | |
|                 "commentStart": 0,
 | |
|                 "end": 0,
 | |
|                 "moduleId": 0,
 | |
|                 "start": 0,
 | |
|                 "type": "CallExpressionKw",
 | |
|                 "type": "CallExpressionKw",
 | |
|                 "unlabeled": {
 | |
|                   "commentStart": 0,
 | |
|                   "end": 0,
 | |
|                   "moduleId": 0,
 | |
|                   "start": 0,
 | |
|                   "type": "PipeSubstitution",
 | |
|                   "type": "PipeSubstitution"
 | |
|                 }
 | |
|               }
 | |
|             ],
 | |
|             "commentStart": 0,
 | |
|             "end": 0,
 | |
|             "moduleId": 0,
 | |
|             "start": 0,
 | |
|             "type": "PipeExpression",
 | |
|             "type": "PipeExpression"
 | |
|           },
 | |
|           "moduleId": 0,
 | |
|           "start": 0,
 | |
|           "type": "VariableDeclarator"
 | |
|         },
 | |
|         "end": 0,
 | |
|         "kind": "const",
 | |
|         "moduleId": 0,
 | |
|         "start": 0,
 | |
|         "type": "VariableDeclaration",
 | |
|         "type": "VariableDeclaration"
 | |
|       },
 | |
|       {
 | |
|         "commentStart": 0,
 | |
|         "declaration": {
 | |
|           "commentStart": 0,
 | |
|           "end": 0,
 | |
|           "id": {
 | |
|             "commentStart": 0,
 | |
|             "end": 0,
 | |
|             "moduleId": 0,
 | |
|             "name": "profile004",
 | |
|             "start": 0,
 | |
|             "type": "Identifier"
 | |
|           },
 | |
|           "init": {
 | |
|             "arguments": [
 | |
|               {
 | |
|                 "type": "LabeledArg",
 | |
|                 "label": {
 | |
|                   "commentStart": 0,
 | |
|                   "end": 0,
 | |
|                   "moduleId": 0,
 | |
|                   "name": "tool",
 | |
|                   "start": 0,
 | |
|                   "type": "Identifier"
 | |
|                 },
 | |
|                 "arg": {
 | |
|                   "abs_path": false,
 | |
|                   "commentStart": 0,
 | |
|                   "end": 0,
 | |
|                   "moduleId": 0,
 | |
|                   "name": {
 | |
|                     "commentStart": 0,
 | |
|                     "end": 0,
 | |
|                     "moduleId": 0,
 | |
|                     "name": "profile002",
 | |
|                     "start": 0,
 | |
|                     "type": "Identifier"
 | |
|                   },
 | |
|                   "path": [],
 | |
|                   "start": 0,
 | |
|                   "type": "Name",
 | |
|                   "type": "Name"
 | |
|                 }
 | |
|               }
 | |
|             ],
 | |
|             "callee": {
 | |
|               "abs_path": false,
 | |
|               "commentStart": 0,
 | |
|               "end": 0,
 | |
|               "moduleId": 0,
 | |
|               "name": {
 | |
|                 "commentStart": 0,
 | |
|                 "end": 0,
 | |
|                 "moduleId": 0,
 | |
|                 "name": "subtract2d",
 | |
|                 "start": 0,
 | |
|                 "type": "Identifier"
 | |
|               },
 | |
|               "path": [],
 | |
|               "start": 0,
 | |
|               "type": "Name"
 | |
|             },
 | |
|             "commentStart": 0,
 | |
|             "end": 0,
 | |
|             "moduleId": 0,
 | |
|             "start": 0,
 | |
|             "type": "CallExpressionKw",
 | |
|             "type": "CallExpressionKw",
 | |
|             "unlabeled": {
 | |
|               "abs_path": false,
 | |
|               "commentStart": 0,
 | |
|               "end": 0,
 | |
|               "moduleId": 0,
 | |
|               "name": {
 | |
|                 "commentStart": 0,
 | |
|                 "end": 0,
 | |
|                 "moduleId": 0,
 | |
|                 "name": "profile001",
 | |
|                 "start": 0,
 | |
|                 "type": "Identifier"
 | |
|               },
 | |
|               "path": [],
 | |
|               "start": 0,
 | |
|               "type": "Name",
 | |
|               "type": "Name"
 | |
|             }
 | |
|           },
 | |
|           "moduleId": 0,
 | |
|           "start": 0,
 | |
|           "type": "VariableDeclarator"
 | |
|         },
 | |
|         "end": 0,
 | |
|         "kind": "const",
 | |
|         "moduleId": 0,
 | |
|         "start": 0,
 | |
|         "type": "VariableDeclaration",
 | |
|         "type": "VariableDeclaration"
 | |
|       },
 | |
|       {
 | |
|         "commentStart": 0,
 | |
|         "end": 0,
 | |
|         "expression": {
 | |
|           "arguments": [
 | |
|             {
 | |
|               "type": "LabeledArg",
 | |
|               "label": {
 | |
|                 "commentStart": 0,
 | |
|                 "end": 0,
 | |
|                 "moduleId": 0,
 | |
|                 "name": "tool",
 | |
|                 "start": 0,
 | |
|                 "type": "Identifier"
 | |
|               },
 | |
|               "arg": {
 | |
|                 "abs_path": false,
 | |
|                 "commentStart": 0,
 | |
|                 "end": 0,
 | |
|                 "moduleId": 0,
 | |
|                 "name": {
 | |
|                   "commentStart": 0,
 | |
|                   "end": 0,
 | |
|                   "moduleId": 0,
 | |
|                   "name": "profile003",
 | |
|                   "start": 0,
 | |
|                   "type": "Identifier"
 | |
|                 },
 | |
|                 "path": [],
 | |
|                 "start": 0,
 | |
|                 "type": "Name",
 | |
|                 "type": "Name"
 | |
|               }
 | |
|             }
 | |
|           ],
 | |
|           "callee": {
 | |
|             "abs_path": false,
 | |
|             "commentStart": 0,
 | |
|             "end": 0,
 | |
|             "moduleId": 0,
 | |
|             "name": {
 | |
|               "commentStart": 0,
 | |
|               "end": 0,
 | |
|               "moduleId": 0,
 | |
|               "name": "subtract2d",
 | |
|               "start": 0,
 | |
|               "type": "Identifier"
 | |
|             },
 | |
|             "path": [],
 | |
|             "start": 0,
 | |
|             "type": "Name"
 | |
|           },
 | |
|           "commentStart": 0,
 | |
|           "end": 0,
 | |
|           "moduleId": 0,
 | |
|           "start": 0,
 | |
|           "type": "CallExpressionKw",
 | |
|           "type": "CallExpressionKw",
 | |
|           "unlabeled": {
 | |
|             "abs_path": false,
 | |
|             "commentStart": 0,
 | |
|             "end": 0,
 | |
|             "moduleId": 0,
 | |
|             "name": {
 | |
|               "commentStart": 0,
 | |
|               "end": 0,
 | |
|               "moduleId": 0,
 | |
|               "name": "profile001",
 | |
|               "start": 0,
 | |
|               "type": "Identifier"
 | |
|             },
 | |
|             "path": [],
 | |
|             "start": 0,
 | |
|             "type": "Name",
 | |
|             "type": "Name"
 | |
|           }
 | |
|         },
 | |
|         "moduleId": 0,
 | |
|         "start": 0,
 | |
|         "type": "ExpressionStatement",
 | |
|         "type": "ExpressionStatement"
 | |
|       },
 | |
|       {
 | |
|         "commentStart": 0,
 | |
|         "declaration": {
 | |
|           "commentStart": 0,
 | |
|           "end": 0,
 | |
|           "id": {
 | |
|             "commentStart": 0,
 | |
|             "end": 0,
 | |
|             "moduleId": 0,
 | |
|             "name": "topFrame",
 | |
|             "start": 0,
 | |
|             "type": "Identifier"
 | |
|           },
 | |
|           "init": {
 | |
|             "arguments": [
 | |
|               {
 | |
|                 "type": "LabeledArg",
 | |
|                 "label": {
 | |
|                   "commentStart": 0,
 | |
|                   "end": 0,
 | |
|                   "moduleId": 0,
 | |
|                   "name": "length",
 | |
|                   "start": 0,
 | |
|                   "type": "Identifier"
 | |
|                 },
 | |
|                 "arg": {
 | |
|                   "abs_path": false,
 | |
|                   "commentStart": 0,
 | |
|                   "end": 0,
 | |
|                   "moduleId": 0,
 | |
|                   "name": {
 | |
|                     "commentStart": 0,
 | |
|                     "end": 0,
 | |
|                     "moduleId": 0,
 | |
|                     "name": "beamLength",
 | |
|                     "start": 0,
 | |
|                     "type": "Identifier"
 | |
|                   },
 | |
|                   "path": [],
 | |
|                   "start": 0,
 | |
|                   "type": "Name",
 | |
|                   "type": "Name"
 | |
|                 }
 | |
|               }
 | |
|             ],
 | |
|             "callee": {
 | |
|               "abs_path": false,
 | |
|               "commentStart": 0,
 | |
|               "end": 0,
 | |
|               "moduleId": 0,
 | |
|               "name": {
 | |
|                 "commentStart": 0,
 | |
|                 "end": 0,
 | |
|                 "moduleId": 0,
 | |
|                 "name": "extrude",
 | |
|                 "start": 0,
 | |
|                 "type": "Identifier"
 | |
|               },
 | |
|               "path": [],
 | |
|               "start": 0,
 | |
|               "type": "Name"
 | |
|             },
 | |
|             "commentStart": 0,
 | |
|             "end": 0,
 | |
|             "moduleId": 0,
 | |
|             "start": 0,
 | |
|             "type": "CallExpressionKw",
 | |
|             "type": "CallExpressionKw",
 | |
|             "unlabeled": {
 | |
|               "abs_path": false,
 | |
|               "commentStart": 0,
 | |
|               "end": 0,
 | |
|               "moduleId": 0,
 | |
|               "name": {
 | |
|                 "commentStart": 0,
 | |
|                 "end": 0,
 | |
|                 "moduleId": 0,
 | |
|                 "name": "profile001",
 | |
|                 "start": 0,
 | |
|                 "type": "Identifier"
 | |
|               },
 | |
|               "path": [],
 | |
|               "start": 0,
 | |
|               "type": "Name",
 | |
|               "type": "Name"
 | |
|             }
 | |
|           },
 | |
|           "moduleId": 0,
 | |
|           "start": 0,
 | |
|           "type": "VariableDeclarator"
 | |
|         },
 | |
|         "end": 0,
 | |
|         "kind": "const",
 | |
|         "moduleId": 0,
 | |
|         "preComments": [
 | |
|           "",
 | |
|           "",
 | |
|           "// Extrude the sketch to make the top frame"
 | |
|         ],
 | |
|         "start": 0,
 | |
|         "type": "VariableDeclaration",
 | |
|         "type": "VariableDeclaration"
 | |
|       },
 | |
|       {
 | |
|         "commentStart": 0,
 | |
|         "declaration": {
 | |
|           "commentStart": 0,
 | |
|           "end": 0,
 | |
|           "id": {
 | |
|             "commentStart": 0,
 | |
|             "end": 0,
 | |
|             "moduleId": 0,
 | |
|             "name": "sketch002",
 | |
|             "start": 0,
 | |
|             "type": "Identifier"
 | |
|           },
 | |
|           "init": {
 | |
|             "arguments": [],
 | |
|             "callee": {
 | |
|               "abs_path": false,
 | |
|               "commentStart": 0,
 | |
|               "end": 0,
 | |
|               "moduleId": 0,
 | |
|               "name": {
 | |
|                 "commentStart": 0,
 | |
|                 "end": 0,
 | |
|                 "moduleId": 0,
 | |
|                 "name": "startSketchOn",
 | |
|                 "start": 0,
 | |
|                 "type": "Identifier"
 | |
|               },
 | |
|               "path": [],
 | |
|               "start": 0,
 | |
|               "type": "Name"
 | |
|             },
 | |
|             "commentStart": 0,
 | |
|             "end": 0,
 | |
|             "moduleId": 0,
 | |
|             "start": 0,
 | |
|             "type": "CallExpressionKw",
 | |
|             "type": "CallExpressionKw",
 | |
|             "unlabeled": {
 | |
|               "arguments": [
 | |
|                 {
 | |
|                   "type": "LabeledArg",
 | |
|                   "label": {
 | |
|                     "commentStart": 0,
 | |
|                     "end": 0,
 | |
|                     "moduleId": 0,
 | |
|                     "name": "offset",
 | |
|                     "start": 0,
 | |
|                     "type": "Identifier"
 | |
|                   },
 | |
|                   "arg": {
 | |
|                     "commentStart": 0,
 | |
|                     "end": 0,
 | |
|                     "moduleId": 0,
 | |
|                     "raw": ".1",
 | |
|                     "start": 0,
 | |
|                     "type": "Literal",
 | |
|                     "type": "Literal",
 | |
|                     "value": {
 | |
|                       "value": 0.1,
 | |
|                       "suffix": "None"
 | |
|                     }
 | |
|                   }
 | |
|                 }
 | |
|               ],
 | |
|               "callee": {
 | |
|                 "abs_path": false,
 | |
|                 "commentStart": 0,
 | |
|                 "end": 0,
 | |
|                 "moduleId": 0,
 | |
|                 "name": {
 | |
|                   "commentStart": 0,
 | |
|                   "end": 0,
 | |
|                   "moduleId": 0,
 | |
|                   "name": "offsetPlane",
 | |
|                   "start": 0,
 | |
|                   "type": "Identifier"
 | |
|                 },
 | |
|                 "path": [],
 | |
|                 "start": 0,
 | |
|                 "type": "Name"
 | |
|               },
 | |
|               "commentStart": 0,
 | |
|               "end": 0,
 | |
|               "moduleId": 0,
 | |
|               "start": 0,
 | |
|               "type": "CallExpressionKw",
 | |
|               "type": "CallExpressionKw",
 | |
|               "unlabeled": {
 | |
|                 "abs_path": false,
 | |
|                 "commentStart": 0,
 | |
|                 "end": 0,
 | |
|                 "moduleId": 0,
 | |
|                 "name": {
 | |
|                   "commentStart": 0,
 | |
|                   "end": 0,
 | |
|                   "moduleId": 0,
 | |
|                   "name": "YZ",
 | |
|                   "start": 0,
 | |
|                   "type": "Identifier"
 | |
|                 },
 | |
|                 "path": [],
 | |
|                 "start": 0,
 | |
|                 "type": "Name",
 | |
|                 "type": "Name"
 | |
|               }
 | |
|             }
 | |
|           },
 | |
|           "moduleId": 0,
 | |
|           "start": 0,
 | |
|           "type": "VariableDeclarator"
 | |
|         },
 | |
|         "end": 0,
 | |
|         "kind": "const",
 | |
|         "moduleId": 0,
 | |
|         "preComments": [
 | |
|           "",
 | |
|           "",
 | |
|           "// Spar 1"
 | |
|         ],
 | |
|         "start": 0,
 | |
|         "type": "VariableDeclaration",
 | |
|         "type": "VariableDeclaration"
 | |
|       },
 | |
|       {
 | |
|         "commentStart": 0,
 | |
|         "declaration": {
 | |
|           "commentStart": 0,
 | |
|           "end": 0,
 | |
|           "id": {
 | |
|             "commentStart": 0,
 | |
|             "end": 0,
 | |
|             "moduleId": 0,
 | |
|             "name": "profile006",
 | |
|             "start": 0,
 | |
|             "type": "Identifier"
 | |
|           },
 | |
|           "init": {
 | |
|             "body": [
 | |
|               {
 | |
|                 "arguments": [
 | |
|                   {
 | |
|                     "type": "LabeledArg",
 | |
|                     "label": {
 | |
|                       "commentStart": 0,
 | |
|                       "end": 0,
 | |
|                       "moduleId": 0,
 | |
|                       "name": "at",
 | |
|                       "start": 0,
 | |
|                       "type": "Identifier"
 | |
|                     },
 | |
|                     "arg": {
 | |
|                       "commentStart": 0,
 | |
|                       "elements": [
 | |
|                         {
 | |
|                           "commentStart": 0,
 | |
|                           "end": 0,
 | |
|                           "left": {
 | |
|                             "commentStart": 0,
 | |
|                             "end": 0,
 | |
|                             "left": {
 | |
|                               "abs_path": false,
 | |
|                               "commentStart": 0,
 | |
|                               "end": 0,
 | |
|                               "moduleId": 0,
 | |
|                               "name": {
 | |
|                                 "commentStart": 0,
 | |
|                                 "end": 0,
 | |
|                                 "moduleId": 0,
 | |
|                                 "name": "thickness",
 | |
|                                 "start": 0,
 | |
|                                 "type": "Identifier"
 | |
|                               },
 | |
|                               "path": [],
 | |
|                               "start": 0,
 | |
|                               "type": "Name",
 | |
|                               "type": "Name"
 | |
|                             },
 | |
|                             "moduleId": 0,
 | |
|                             "operator": "/",
 | |
|                             "right": {
 | |
|                               "commentStart": 0,
 | |
|                               "end": 0,
 | |
|                               "moduleId": 0,
 | |
|                               "raw": "2",
 | |
|                               "start": 0,
 | |
|                               "type": "Literal",
 | |
|                               "type": "Literal",
 | |
|                               "value": {
 | |
|                                 "value": 2.0,
 | |
|                                 "suffix": "None"
 | |
|                               }
 | |
|                             },
 | |
|                             "start": 0,
 | |
|                             "type": "BinaryExpression",
 | |
|                             "type": "BinaryExpression"
 | |
|                           },
 | |
|                           "moduleId": 0,
 | |
|                           "operator": "-",
 | |
|                           "right": {
 | |
|                             "commentStart": 0,
 | |
|                             "end": 0,
 | |
|                             "moduleId": 0,
 | |
|                             "raw": "1",
 | |
|                             "start": 0,
 | |
|                             "type": "Literal",
 | |
|                             "type": "Literal",
 | |
|                             "value": {
 | |
|                               "value": 1.0,
 | |
|                               "suffix": "None"
 | |
|                             }
 | |
|                           },
 | |
|                           "start": 0,
 | |
|                           "type": "BinaryExpression",
 | |
|                           "type": "BinaryExpression"
 | |
|                         },
 | |
|                         {
 | |
|                           "commentStart": 0,
 | |
|                           "end": 0,
 | |
|                           "moduleId": 0,
 | |
|                           "raw": "14",
 | |
|                           "start": 0,
 | |
|                           "type": "Literal",
 | |
|                           "type": "Literal",
 | |
|                           "value": {
 | |
|                             "value": 14.0,
 | |
|                             "suffix": "None"
 | |
|                           }
 | |
|                         }
 | |
|                       ],
 | |
|                       "end": 0,
 | |
|                       "moduleId": 0,
 | |
|                       "start": 0,
 | |
|                       "type": "ArrayExpression",
 | |
|                       "type": "ArrayExpression"
 | |
|                     }
 | |
|                   }
 | |
|                 ],
 | |
|                 "callee": {
 | |
|                   "abs_path": false,
 | |
|                   "commentStart": 0,
 | |
|                   "end": 0,
 | |
|                   "moduleId": 0,
 | |
|                   "name": {
 | |
|                     "commentStart": 0,
 | |
|                     "end": 0,
 | |
|                     "moduleId": 0,
 | |
|                     "name": "startProfile",
 | |
|                     "start": 0,
 | |
|                     "type": "Identifier"
 | |
|                   },
 | |
|                   "path": [],
 | |
|                   "start": 0,
 | |
|                   "type": "Name"
 | |
|                 },
 | |
|                 "commentStart": 0,
 | |
|                 "end": 0,
 | |
|                 "moduleId": 0,
 | |
|                 "start": 0,
 | |
|                 "type": "CallExpressionKw",
 | |
|                 "type": "CallExpressionKw",
 | |
|                 "unlabeled": {
 | |
|                   "abs_path": false,
 | |
|                   "commentStart": 0,
 | |
|                   "end": 0,
 | |
|                   "moduleId": 0,
 | |
|                   "name": {
 | |
|                     "commentStart": 0,
 | |
|                     "end": 0,
 | |
|                     "moduleId": 0,
 | |
|                     "name": "sketch002",
 | |
|                     "start": 0,
 | |
|                     "type": "Identifier"
 | |
|                   },
 | |
|                   "path": [],
 | |
|                   "start": 0,
 | |
|                   "type": "Name",
 | |
|                   "type": "Name"
 | |
|                 }
 | |
|               },
 | |
|               {
 | |
|                 "arguments": [
 | |
|                   {
 | |
|                     "type": "LabeledArg",
 | |
|                     "label": {
 | |
|                       "commentStart": 0,
 | |
|                       "end": 0,
 | |
|                       "moduleId": 0,
 | |
|                       "name": "angle",
 | |
|                       "start": 0,
 | |
|                       "type": "Identifier"
 | |
|                     },
 | |
|                     "arg": {
 | |
|                       "abs_path": false,
 | |
|                       "commentStart": 0,
 | |
|                       "end": 0,
 | |
|                       "moduleId": 0,
 | |
|                       "name": {
 | |
|                         "commentStart": 0,
 | |
|                         "end": 0,
 | |
|                         "moduleId": 0,
 | |
|                         "name": "sparAngle",
 | |
|                         "start": 0,
 | |
|                         "type": "Identifier"
 | |
|                       },
 | |
|                       "path": [],
 | |
|                       "start": 0,
 | |
|                       "type": "Name",
 | |
|                       "type": "Name"
 | |
|                     }
 | |
|                   },
 | |
|                   {
 | |
|                     "type": "LabeledArg",
 | |
|                     "label": {
 | |
|                       "commentStart": 0,
 | |
|                       "end": 0,
 | |
|                       "moduleId": 0,
 | |
|                       "name": "length",
 | |
|                       "start": 0,
 | |
|                       "type": "Identifier"
 | |
|                     },
 | |
|                     "arg": {
 | |
|                       "commentStart": 0,
 | |
|                       "end": 0,
 | |
|                       "moduleId": 0,
 | |
|                       "raw": "25",
 | |
|                       "start": 0,
 | |
|                       "type": "Literal",
 | |
|                       "type": "Literal",
 | |
|                       "value": {
 | |
|                         "value": 25.0,
 | |
|                         "suffix": "None"
 | |
|                       }
 | |
|                     }
 | |
|                   }
 | |
|                 ],
 | |
|                 "callee": {
 | |
|                   "abs_path": false,
 | |
|                   "commentStart": 0,
 | |
|                   "end": 0,
 | |
|                   "moduleId": 0,
 | |
|                   "name": {
 | |
|                     "commentStart": 0,
 | |
|                     "end": 0,
 | |
|                     "moduleId": 0,
 | |
|                     "name": "angledLine",
 | |
|                     "start": 0,
 | |
|                     "type": "Identifier"
 | |
|                   },
 | |
|                   "path": [],
 | |
|                   "start": 0,
 | |
|                   "type": "Name"
 | |
|                 },
 | |
|                 "commentStart": 0,
 | |
|                 "end": 0,
 | |
|                 "moduleId": 0,
 | |
|                 "start": 0,
 | |
|                 "type": "CallExpressionKw",
 | |
|                 "type": "CallExpressionKw",
 | |
|                 "unlabeled": null
 | |
|               },
 | |
|               {
 | |
|                 "arguments": [
 | |
|                   {
 | |
|                     "type": "LabeledArg",
 | |
|                     "label": {
 | |
|                       "commentStart": 0,
 | |
|                       "end": 0,
 | |
|                       "moduleId": 0,
 | |
|                       "name": "angle",
 | |
|                       "start": 0,
 | |
|                       "type": "Identifier"
 | |
|                     },
 | |
|                     "arg": {
 | |
|                       "argument": {
 | |
|                         "abs_path": false,
 | |
|                         "commentStart": 0,
 | |
|                         "end": 0,
 | |
|                         "moduleId": 0,
 | |
|                         "name": {
 | |
|                           "commentStart": 0,
 | |
|                           "end": 0,
 | |
|                           "moduleId": 0,
 | |
|                           "name": "topTrussAngle",
 | |
|                           "start": 0,
 | |
|                           "type": "Identifier"
 | |
|                         },
 | |
|                         "path": [],
 | |
|                         "start": 0,
 | |
|                         "type": "Name",
 | |
|                         "type": "Name"
 | |
|                       },
 | |
|                       "commentStart": 0,
 | |
|                       "end": 0,
 | |
|                       "moduleId": 0,
 | |
|                       "operator": "-",
 | |
|                       "start": 0,
 | |
|                       "type": "UnaryExpression",
 | |
|                       "type": "UnaryExpression"
 | |
|                     }
 | |
|                   },
 | |
|                   {
 | |
|                     "type": "LabeledArg",
 | |
|                     "label": {
 | |
|                       "commentStart": 0,
 | |
|                       "end": 0,
 | |
|                       "moduleId": 0,
 | |
|                       "name": "length",
 | |
|                       "start": 0,
 | |
|                       "type": "Identifier"
 | |
|                     },
 | |
|                     "arg": {
 | |
|                       "commentStart": 0,
 | |
|                       "end": 0,
 | |
|                       "moduleId": 0,
 | |
|                       "raw": "5",
 | |
|                       "start": 0,
 | |
|                       "type": "Literal",
 | |
|                       "type": "Literal",
 | |
|                       "value": {
 | |
|                         "value": 5.0,
 | |
|                         "suffix": "None"
 | |
|                       }
 | |
|                     }
 | |
|                   }
 | |
|                 ],
 | |
|                 "callee": {
 | |
|                   "abs_path": false,
 | |
|                   "commentStart": 0,
 | |
|                   "end": 0,
 | |
|                   "moduleId": 0,
 | |
|                   "name": {
 | |
|                     "commentStart": 0,
 | |
|                     "end": 0,
 | |
|                     "moduleId": 0,
 | |
|                     "name": "angledLine",
 | |
|                     "start": 0,
 | |
|                     "type": "Identifier"
 | |
|                   },
 | |
|                   "path": [],
 | |
|                   "start": 0,
 | |
|                   "type": "Name"
 | |
|                 },
 | |
|                 "commentStart": 0,
 | |
|                 "end": 0,
 | |
|                 "moduleId": 0,
 | |
|                 "start": 0,
 | |
|                 "type": "CallExpressionKw",
 | |
|                 "type": "CallExpressionKw",
 | |
|                 "unlabeled": null
 | |
|               },
 | |
|               {
 | |
|                 "arguments": [
 | |
|                   {
 | |
|                     "type": "LabeledArg",
 | |
|                     "label": {
 | |
|                       "commentStart": 0,
 | |
|                       "end": 0,
 | |
|                       "moduleId": 0,
 | |
|                       "name": "angle",
 | |
|                       "start": 0,
 | |
|                       "type": "Identifier"
 | |
|                     },
 | |
|                     "arg": {
 | |
|                       "commentStart": 0,
 | |
|                       "end": 0,
 | |
|                       "left": {
 | |
|                         "commentStart": 0,
 | |
|                         "end": 0,
 | |
|                         "moduleId": 0,
 | |
|                         "raw": "180",
 | |
|                         "start": 0,
 | |
|                         "type": "Literal",
 | |
|                         "type": "Literal",
 | |
|                         "value": {
 | |
|                           "value": 180.0,
 | |
|                           "suffix": "None"
 | |
|                         }
 | |
|                       },
 | |
|                       "moduleId": 0,
 | |
|                       "operator": "+",
 | |
|                       "right": {
 | |
|                         "abs_path": false,
 | |
|                         "commentStart": 0,
 | |
|                         "end": 0,
 | |
|                         "moduleId": 0,
 | |
|                         "name": {
 | |
|                           "commentStart": 0,
 | |
|                           "end": 0,
 | |
|                           "moduleId": 0,
 | |
|                           "name": "sparAngle",
 | |
|                           "start": 0,
 | |
|                           "type": "Identifier"
 | |
|                         },
 | |
|                         "path": [],
 | |
|                         "start": 0,
 | |
|                         "type": "Name",
 | |
|                         "type": "Name"
 | |
|                       },
 | |
|                       "start": 0,
 | |
|                       "type": "BinaryExpression",
 | |
|                       "type": "BinaryExpression"
 | |
|                     }
 | |
|                   },
 | |
|                   {
 | |
|                     "type": "LabeledArg",
 | |
|                     "label": {
 | |
|                       "commentStart": 0,
 | |
|                       "end": 0,
 | |
|                       "moduleId": 0,
 | |
|                       "name": "endAbsoluteX",
 | |
|                       "start": 0,
 | |
|                       "type": "Identifier"
 | |
|                     },
 | |
|                     "arg": {
 | |
|                       "arguments": [],
 | |
|                       "callee": {
 | |
|                         "abs_path": false,
 | |
|                         "commentStart": 0,
 | |
|                         "end": 0,
 | |
|                         "moduleId": 0,
 | |
|                         "name": {
 | |
|                           "commentStart": 0,
 | |
|                           "end": 0,
 | |
|                           "moduleId": 0,
 | |
|                           "name": "profileStartX",
 | |
|                           "start": 0,
 | |
|                           "type": "Identifier"
 | |
|                         },
 | |
|                         "path": [],
 | |
|                         "start": 0,
 | |
|                         "type": "Name"
 | |
|                       },
 | |
|                       "commentStart": 0,
 | |
|                       "end": 0,
 | |
|                       "moduleId": 0,
 | |
|                       "start": 0,
 | |
|                       "type": "CallExpressionKw",
 | |
|                       "type": "CallExpressionKw",
 | |
|                       "unlabeled": {
 | |
|                         "commentStart": 0,
 | |
|                         "end": 0,
 | |
|                         "moduleId": 0,
 | |
|                         "start": 0,
 | |
|                         "type": "PipeSubstitution",
 | |
|                         "type": "PipeSubstitution"
 | |
|                       }
 | |
|                     }
 | |
|                   }
 | |
|                 ],
 | |
|                 "callee": {
 | |
|                   "abs_path": false,
 | |
|                   "commentStart": 0,
 | |
|                   "end": 0,
 | |
|                   "moduleId": 0,
 | |
|                   "name": {
 | |
|                     "commentStart": 0,
 | |
|                     "end": 0,
 | |
|                     "moduleId": 0,
 | |
|                     "name": "angledLine",
 | |
|                     "start": 0,
 | |
|                     "type": "Identifier"
 | |
|                   },
 | |
|                   "path": [],
 | |
|                   "start": 0,
 | |
|                   "type": "Name"
 | |
|                 },
 | |
|                 "commentStart": 0,
 | |
|                 "end": 0,
 | |
|                 "moduleId": 0,
 | |
|                 "start": 0,
 | |
|                 "type": "CallExpressionKw",
 | |
|                 "type": "CallExpressionKw",
 | |
|                 "unlabeled": null
 | |
|               },
 | |
|               {
 | |
|                 "arguments": [],
 | |
|                 "callee": {
 | |
|                   "abs_path": false,
 | |
|                   "commentStart": 0,
 | |
|                   "end": 0,
 | |
|                   "moduleId": 0,
 | |
|                   "name": {
 | |
|                     "commentStart": 0,
 | |
|                     "end": 0,
 | |
|                     "moduleId": 0,
 | |
|                     "name": "close",
 | |
|                     "start": 0,
 | |
|                     "type": "Identifier"
 | |
|                   },
 | |
|                   "path": [],
 | |
|                   "start": 0,
 | |
|                   "type": "Name"
 | |
|                 },
 | |
|                 "commentStart": 0,
 | |
|                 "end": 0,
 | |
|                 "moduleId": 0,
 | |
|                 "start": 0,
 | |
|                 "type": "CallExpressionKw",
 | |
|                 "type": "CallExpressionKw",
 | |
|                 "unlabeled": {
 | |
|                   "commentStart": 0,
 | |
|                   "end": 0,
 | |
|                   "moduleId": 0,
 | |
|                   "start": 0,
 | |
|                   "type": "PipeSubstitution",
 | |
|                   "type": "PipeSubstitution"
 | |
|                 }
 | |
|               }
 | |
|             ],
 | |
|             "commentStart": 0,
 | |
|             "end": 0,
 | |
|             "moduleId": 0,
 | |
|             "start": 0,
 | |
|             "type": "PipeExpression",
 | |
|             "type": "PipeExpression"
 | |
|           },
 | |
|           "moduleId": 0,
 | |
|           "start": 0,
 | |
|           "type": "VariableDeclarator"
 | |
|         },
 | |
|         "end": 0,
 | |
|         "kind": "const",
 | |
|         "moduleId": 0,
 | |
|         "start": 0,
 | |
|         "type": "VariableDeclaration",
 | |
|         "type": "VariableDeclaration"
 | |
|       },
 | |
|       {
 | |
|         "commentStart": 0,
 | |
|         "declaration": {
 | |
|           "commentStart": 0,
 | |
|           "end": 0,
 | |
|           "id": {
 | |
|             "commentStart": 0,
 | |
|             "end": 0,
 | |
|             "moduleId": 0,
 | |
|             "name": "spar001",
 | |
|             "start": 0,
 | |
|             "type": "Identifier"
 | |
|           },
 | |
|           "init": {
 | |
|             "arguments": [
 | |
|               {
 | |
|                 "type": "LabeledArg",
 | |
|                 "label": {
 | |
|                   "commentStart": 0,
 | |
|                   "end": 0,
 | |
|                   "moduleId": 0,
 | |
|                   "name": "length",
 | |
|                   "start": 0,
 | |
|                   "type": "Identifier"
 | |
|                 },
 | |
|                 "arg": {
 | |
|                   "commentStart": 0,
 | |
|                   "end": 0,
 | |
|                   "moduleId": 0,
 | |
|                   "raw": "1.8",
 | |
|                   "start": 0,
 | |
|                   "type": "Literal",
 | |
|                   "type": "Literal",
 | |
|                   "value": {
 | |
|                     "value": 1.8,
 | |
|                     "suffix": "None"
 | |
|                   }
 | |
|                 }
 | |
|               }
 | |
|             ],
 | |
|             "callee": {
 | |
|               "abs_path": false,
 | |
|               "commentStart": 0,
 | |
|               "end": 0,
 | |
|               "moduleId": 0,
 | |
|               "name": {
 | |
|                 "commentStart": 0,
 | |
|                 "end": 0,
 | |
|                 "moduleId": 0,
 | |
|                 "name": "extrude",
 | |
|                 "start": 0,
 | |
|                 "type": "Identifier"
 | |
|               },
 | |
|               "path": [],
 | |
|               "start": 0,
 | |
|               "type": "Name"
 | |
|             },
 | |
|             "commentStart": 0,
 | |
|             "end": 0,
 | |
|             "moduleId": 0,
 | |
|             "start": 0,
 | |
|             "type": "CallExpressionKw",
 | |
|             "type": "CallExpressionKw",
 | |
|             "unlabeled": {
 | |
|               "abs_path": false,
 | |
|               "commentStart": 0,
 | |
|               "end": 0,
 | |
|               "moduleId": 0,
 | |
|               "name": {
 | |
|                 "commentStart": 0,
 | |
|                 "end": 0,
 | |
|                 "moduleId": 0,
 | |
|                 "name": "profile006",
 | |
|                 "start": 0,
 | |
|                 "type": "Identifier"
 | |
|               },
 | |
|               "path": [],
 | |
|               "start": 0,
 | |
|               "type": "Name",
 | |
|               "type": "Name"
 | |
|             }
 | |
|           },
 | |
|           "moduleId": 0,
 | |
|           "start": 0,
 | |
|           "type": "VariableDeclarator"
 | |
|         },
 | |
|         "end": 0,
 | |
|         "kind": "const",
 | |
|         "moduleId": 0,
 | |
|         "start": 0,
 | |
|         "type": "VariableDeclaration",
 | |
|         "type": "VariableDeclaration"
 | |
|       },
 | |
|       {
 | |
|         "commentStart": 0,
 | |
|         "declaration": {
 | |
|           "commentStart": 0,
 | |
|           "end": 0,
 | |
|           "id": {
 | |
|             "commentStart": 0,
 | |
|             "end": 0,
 | |
|             "moduleId": 0,
 | |
|             "name": "profile007",
 | |
|             "start": 0,
 | |
|             "type": "Identifier"
 | |
|           },
 | |
|           "init": {
 | |
|             "body": [
 | |
|               {
 | |
|                 "arguments": [
 | |
|                   {
 | |
|                     "type": "LabeledArg",
 | |
|                     "label": {
 | |
|                       "commentStart": 0,
 | |
|                       "end": 0,
 | |
|                       "moduleId": 0,
 | |
|                       "name": "at",
 | |
|                       "start": 0,
 | |
|                       "type": "Identifier"
 | |
|                     },
 | |
|                     "arg": {
 | |
|                       "commentStart": 0,
 | |
|                       "elements": [
 | |
|                         {
 | |
|                           "commentStart": 0,
 | |
|                           "end": 0,
 | |
|                           "left": {
 | |
|                             "commentStart": 0,
 | |
|                             "end": 0,
 | |
|                             "left": {
 | |
|                               "argument": {
 | |
|                                 "abs_path": false,
 | |
|                                 "commentStart": 0,
 | |
|                                 "end": 0,
 | |
|                                 "moduleId": 0,
 | |
|                                 "name": {
 | |
|                                   "commentStart": 0,
 | |
|                                   "end": 0,
 | |
|                                   "moduleId": 0,
 | |
|                                   "name": "thickness",
 | |
|                                   "start": 0,
 | |
|                                   "type": "Identifier"
 | |
|                                 },
 | |
|                                 "path": [],
 | |
|                                 "start": 0,
 | |
|                                 "type": "Name",
 | |
|                                 "type": "Name"
 | |
|                               },
 | |
|                               "commentStart": 0,
 | |
|                               "end": 0,
 | |
|                               "moduleId": 0,
 | |
|                               "operator": "-",
 | |
|                               "start": 0,
 | |
|                               "type": "UnaryExpression",
 | |
|                               "type": "UnaryExpression"
 | |
|                             },
 | |
|                             "moduleId": 0,
 | |
|                             "operator": "/",
 | |
|                             "right": {
 | |
|                               "commentStart": 0,
 | |
|                               "end": 0,
 | |
|                               "moduleId": 0,
 | |
|                               "raw": "2",
 | |
|                               "start": 0,
 | |
|                               "type": "Literal",
 | |
|                               "type": "Literal",
 | |
|                               "value": {
 | |
|                                 "value": 2.0,
 | |
|                                 "suffix": "None"
 | |
|                               }
 | |
|                             },
 | |
|                             "start": 0,
 | |
|                             "type": "BinaryExpression",
 | |
|                             "type": "BinaryExpression"
 | |
|                           },
 | |
|                           "moduleId": 0,
 | |
|                           "operator": "+",
 | |
|                           "right": {
 | |
|                             "commentStart": 0,
 | |
|                             "end": 0,
 | |
|                             "moduleId": 0,
 | |
|                             "raw": "1",
 | |
|                             "start": 0,
 | |
|                             "type": "Literal",
 | |
|                             "type": "Literal",
 | |
|                             "value": {
 | |
|                               "value": 1.0,
 | |
|                               "suffix": "None"
 | |
|                             }
 | |
|                           },
 | |
|                           "start": 0,
 | |
|                           "type": "BinaryExpression",
 | |
|                           "type": "BinaryExpression"
 | |
|                         },
 | |
|                         {
 | |
|                           "commentStart": 0,
 | |
|                           "end": 0,
 | |
|                           "moduleId": 0,
 | |
|                           "raw": "14",
 | |
|                           "start": 0,
 | |
|                           "type": "Literal",
 | |
|                           "type": "Literal",
 | |
|                           "value": {
 | |
|                             "value": 14.0,
 | |
|                             "suffix": "None"
 | |
|                           }
 | |
|                         }
 | |
|                       ],
 | |
|                       "end": 0,
 | |
|                       "moduleId": 0,
 | |
|                       "start": 0,
 | |
|                       "type": "ArrayExpression",
 | |
|                       "type": "ArrayExpression"
 | |
|                     }
 | |
|                   }
 | |
|                 ],
 | |
|                 "callee": {
 | |
|                   "abs_path": false,
 | |
|                   "commentStart": 0,
 | |
|                   "end": 0,
 | |
|                   "moduleId": 0,
 | |
|                   "name": {
 | |
|                     "commentStart": 0,
 | |
|                     "end": 0,
 | |
|                     "moduleId": 0,
 | |
|                     "name": "startProfile",
 | |
|                     "start": 0,
 | |
|                     "type": "Identifier"
 | |
|                   },
 | |
|                   "path": [],
 | |
|                   "start": 0,
 | |
|                   "type": "Name"
 | |
|                 },
 | |
|                 "commentStart": 0,
 | |
|                 "end": 0,
 | |
|                 "moduleId": 0,
 | |
|                 "start": 0,
 | |
|                 "type": "CallExpressionKw",
 | |
|                 "type": "CallExpressionKw",
 | |
|                 "unlabeled": {
 | |
|                   "abs_path": false,
 | |
|                   "commentStart": 0,
 | |
|                   "end": 0,
 | |
|                   "moduleId": 0,
 | |
|                   "name": {
 | |
|                     "commentStart": 0,
 | |
|                     "end": 0,
 | |
|                     "moduleId": 0,
 | |
|                     "name": "sketch002",
 | |
|                     "start": 0,
 | |
|                     "type": "Identifier"
 | |
|                   },
 | |
|                   "path": [],
 | |
|                   "start": 0,
 | |
|                   "type": "Name",
 | |
|                   "type": "Name"
 | |
|                 }
 | |
|               },
 | |
|               {
 | |
|                 "arguments": [
 | |
|                   {
 | |
|                     "type": "LabeledArg",
 | |
|                     "label": {
 | |
|                       "commentStart": 0,
 | |
|                       "end": 0,
 | |
|                       "moduleId": 0,
 | |
|                       "name": "angle",
 | |
|                       "start": 0,
 | |
|                       "type": "Identifier"
 | |
|                     },
 | |
|                     "arg": {
 | |
|                       "commentStart": 0,
 | |
|                       "end": 0,
 | |
|                       "left": {
 | |
|                         "commentStart": 0,
 | |
|                         "end": 0,
 | |
|                         "moduleId": 0,
 | |
|                         "raw": "180",
 | |
|                         "start": 0,
 | |
|                         "type": "Literal",
 | |
|                         "type": "Literal",
 | |
|                         "value": {
 | |
|                           "value": 180.0,
 | |
|                           "suffix": "None"
 | |
|                         }
 | |
|                       },
 | |
|                       "moduleId": 0,
 | |
|                       "operator": "-",
 | |
|                       "right": {
 | |
|                         "abs_path": false,
 | |
|                         "commentStart": 0,
 | |
|                         "end": 0,
 | |
|                         "moduleId": 0,
 | |
|                         "name": {
 | |
|                           "commentStart": 0,
 | |
|                           "end": 0,
 | |
|                           "moduleId": 0,
 | |
|                           "name": "sparAngle",
 | |
|                           "start": 0,
 | |
|                           "type": "Identifier"
 | |
|                         },
 | |
|                         "path": [],
 | |
|                         "start": 0,
 | |
|                         "type": "Name",
 | |
|                         "type": "Name"
 | |
|                       },
 | |
|                       "start": 0,
 | |
|                       "type": "BinaryExpression",
 | |
|                       "type": "BinaryExpression"
 | |
|                     }
 | |
|                   },
 | |
|                   {
 | |
|                     "type": "LabeledArg",
 | |
|                     "label": {
 | |
|                       "commentStart": 0,
 | |
|                       "end": 0,
 | |
|                       "moduleId": 0,
 | |
|                       "name": "length",
 | |
|                       "start": 0,
 | |
|                       "type": "Identifier"
 | |
|                     },
 | |
|                     "arg": {
 | |
|                       "commentStart": 0,
 | |
|                       "end": 0,
 | |
|                       "moduleId": 0,
 | |
|                       "raw": "25",
 | |
|                       "start": 0,
 | |
|                       "type": "Literal",
 | |
|                       "type": "Literal",
 | |
|                       "value": {
 | |
|                         "value": 25.0,
 | |
|                         "suffix": "None"
 | |
|                       }
 | |
|                     }
 | |
|                   }
 | |
|                 ],
 | |
|                 "callee": {
 | |
|                   "abs_path": false,
 | |
|                   "commentStart": 0,
 | |
|                   "end": 0,
 | |
|                   "moduleId": 0,
 | |
|                   "name": {
 | |
|                     "commentStart": 0,
 | |
|                     "end": 0,
 | |
|                     "moduleId": 0,
 | |
|                     "name": "angledLine",
 | |
|                     "start": 0,
 | |
|                     "type": "Identifier"
 | |
|                   },
 | |
|                   "path": [],
 | |
|                   "start": 0,
 | |
|                   "type": "Name"
 | |
|                 },
 | |
|                 "commentStart": 0,
 | |
|                 "end": 0,
 | |
|                 "moduleId": 0,
 | |
|                 "start": 0,
 | |
|                 "type": "CallExpressionKw",
 | |
|                 "type": "CallExpressionKw",
 | |
|                 "unlabeled": null
 | |
|               },
 | |
|               {
 | |
|                 "arguments": [
 | |
|                   {
 | |
|                     "type": "LabeledArg",
 | |
|                     "label": {
 | |
|                       "commentStart": 0,
 | |
|                       "end": 0,
 | |
|                       "moduleId": 0,
 | |
|                       "name": "angle",
 | |
|                       "start": 0,
 | |
|                       "type": "Identifier"
 | |
|                     },
 | |
|                     "arg": {
 | |
|                       "commentStart": 0,
 | |
|                       "end": 0,
 | |
|                       "left": {
 | |
|                         "commentStart": 0,
 | |
|                         "end": 0,
 | |
|                         "moduleId": 0,
 | |
|                         "raw": "180",
 | |
|                         "start": 0,
 | |
|                         "type": "Literal",
 | |
|                         "type": "Literal",
 | |
|                         "value": {
 | |
|                           "value": 180.0,
 | |
|                           "suffix": "None"
 | |
|                         }
 | |
|                       },
 | |
|                       "moduleId": 0,
 | |
|                       "operator": "+",
 | |
|                       "right": {
 | |
|                         "abs_path": false,
 | |
|                         "commentStart": 0,
 | |
|                         "end": 0,
 | |
|                         "moduleId": 0,
 | |
|                         "name": {
 | |
|                           "commentStart": 0,
 | |
|                           "end": 0,
 | |
|                           "moduleId": 0,
 | |
|                           "name": "topTrussAngle",
 | |
|                           "start": 0,
 | |
|                           "type": "Identifier"
 | |
|                         },
 | |
|                         "path": [],
 | |
|                         "start": 0,
 | |
|                         "type": "Name",
 | |
|                         "type": "Name"
 | |
|                       },
 | |
|                       "start": 0,
 | |
|                       "type": "BinaryExpression",
 | |
|                       "type": "BinaryExpression"
 | |
|                     }
 | |
|                   },
 | |
|                   {
 | |
|                     "type": "LabeledArg",
 | |
|                     "label": {
 | |
|                       "commentStart": 0,
 | |
|                       "end": 0,
 | |
|                       "moduleId": 0,
 | |
|                       "name": "length",
 | |
|                       "start": 0,
 | |
|                       "type": "Identifier"
 | |
|                     },
 | |
|                     "arg": {
 | |
|                       "commentStart": 0,
 | |
|                       "end": 0,
 | |
|                       "moduleId": 0,
 | |
|                       "raw": "5",
 | |
|                       "start": 0,
 | |
|                       "type": "Literal",
 | |
|                       "type": "Literal",
 | |
|                       "value": {
 | |
|                         "value": 5.0,
 | |
|                         "suffix": "None"
 | |
|                       }
 | |
|                     }
 | |
|                   }
 | |
|                 ],
 | |
|                 "callee": {
 | |
|                   "abs_path": false,
 | |
|                   "commentStart": 0,
 | |
|                   "end": 0,
 | |
|                   "moduleId": 0,
 | |
|                   "name": {
 | |
|                     "commentStart": 0,
 | |
|                     "end": 0,
 | |
|                     "moduleId": 0,
 | |
|                     "name": "angledLine",
 | |
|                     "start": 0,
 | |
|                     "type": "Identifier"
 | |
|                   },
 | |
|                   "path": [],
 | |
|                   "start": 0,
 | |
|                   "type": "Name"
 | |
|                 },
 | |
|                 "commentStart": 0,
 | |
|                 "end": 0,
 | |
|                 "moduleId": 0,
 | |
|                 "start": 0,
 | |
|                 "type": "CallExpressionKw",
 | |
|                 "type": "CallExpressionKw",
 | |
|                 "unlabeled": null
 | |
|               },
 | |
|               {
 | |
|                 "arguments": [
 | |
|                   {
 | |
|                     "type": "LabeledArg",
 | |
|                     "label": {
 | |
|                       "commentStart": 0,
 | |
|                       "end": 0,
 | |
|                       "moduleId": 0,
 | |
|                       "name": "angle",
 | |
|                       "start": 0,
 | |
|                       "type": "Identifier"
 | |
|                     },
 | |
|                     "arg": {
 | |
|                       "argument": {
 | |
|                         "abs_path": false,
 | |
|                         "commentStart": 0,
 | |
|                         "end": 0,
 | |
|                         "moduleId": 0,
 | |
|                         "name": {
 | |
|                           "commentStart": 0,
 | |
|                           "end": 0,
 | |
|                           "moduleId": 0,
 | |
|                           "name": "sparAngle",
 | |
|                           "start": 0,
 | |
|                           "type": "Identifier"
 | |
|                         },
 | |
|                         "path": [],
 | |
|                         "start": 0,
 | |
|                         "type": "Name",
 | |
|                         "type": "Name"
 | |
|                       },
 | |
|                       "commentStart": 0,
 | |
|                       "end": 0,
 | |
|                       "moduleId": 0,
 | |
|                       "operator": "-",
 | |
|                       "start": 0,
 | |
|                       "type": "UnaryExpression",
 | |
|                       "type": "UnaryExpression"
 | |
|                     }
 | |
|                   },
 | |
|                   {
 | |
|                     "type": "LabeledArg",
 | |
|                     "label": {
 | |
|                       "commentStart": 0,
 | |
|                       "end": 0,
 | |
|                       "moduleId": 0,
 | |
|                       "name": "endAbsoluteX",
 | |
|                       "start": 0,
 | |
|                       "type": "Identifier"
 | |
|                     },
 | |
|                     "arg": {
 | |
|                       "arguments": [],
 | |
|                       "callee": {
 | |
|                         "abs_path": false,
 | |
|                         "commentStart": 0,
 | |
|                         "end": 0,
 | |
|                         "moduleId": 0,
 | |
|                         "name": {
 | |
|                           "commentStart": 0,
 | |
|                           "end": 0,
 | |
|                           "moduleId": 0,
 | |
|                           "name": "profileStartX",
 | |
|                           "start": 0,
 | |
|                           "type": "Identifier"
 | |
|                         },
 | |
|                         "path": [],
 | |
|                         "start": 0,
 | |
|                         "type": "Name"
 | |
|                       },
 | |
|                       "commentStart": 0,
 | |
|                       "end": 0,
 | |
|                       "moduleId": 0,
 | |
|                       "start": 0,
 | |
|                       "type": "CallExpressionKw",
 | |
|                       "type": "CallExpressionKw",
 | |
|                       "unlabeled": {
 | |
|                         "commentStart": 0,
 | |
|                         "end": 0,
 | |
|                         "moduleId": 0,
 | |
|                         "start": 0,
 | |
|                         "type": "PipeSubstitution",
 | |
|                         "type": "PipeSubstitution"
 | |
|                       }
 | |
|                     }
 | |
|                   }
 | |
|                 ],
 | |
|                 "callee": {
 | |
|                   "abs_path": false,
 | |
|                   "commentStart": 0,
 | |
|                   "end": 0,
 | |
|                   "moduleId": 0,
 | |
|                   "name": {
 | |
|                     "commentStart": 0,
 | |
|                     "end": 0,
 | |
|                     "moduleId": 0,
 | |
|                     "name": "angledLine",
 | |
|                     "start": 0,
 | |
|                     "type": "Identifier"
 | |
|                   },
 | |
|                   "path": [],
 | |
|                   "start": 0,
 | |
|                   "type": "Name"
 | |
|                 },
 | |
|                 "commentStart": 0,
 | |
|                 "end": 0,
 | |
|                 "moduleId": 0,
 | |
|                 "start": 0,
 | |
|                 "type": "CallExpressionKw",
 | |
|                 "type": "CallExpressionKw",
 | |
|                 "unlabeled": null
 | |
|               },
 | |
|               {
 | |
|                 "arguments": [],
 | |
|                 "callee": {
 | |
|                   "abs_path": false,
 | |
|                   "commentStart": 0,
 | |
|                   "end": 0,
 | |
|                   "moduleId": 0,
 | |
|                   "name": {
 | |
|                     "commentStart": 0,
 | |
|                     "end": 0,
 | |
|                     "moduleId": 0,
 | |
|                     "name": "close",
 | |
|                     "start": 0,
 | |
|                     "type": "Identifier"
 | |
|                   },
 | |
|                   "path": [],
 | |
|                   "start": 0,
 | |
|                   "type": "Name"
 | |
|                 },
 | |
|                 "commentStart": 0,
 | |
|                 "end": 0,
 | |
|                 "moduleId": 0,
 | |
|                 "start": 0,
 | |
|                 "type": "CallExpressionKw",
 | |
|                 "type": "CallExpressionKw",
 | |
|                 "unlabeled": {
 | |
|                   "commentStart": 0,
 | |
|                   "end": 0,
 | |
|                   "moduleId": 0,
 | |
|                   "start": 0,
 | |
|                   "type": "PipeSubstitution",
 | |
|                   "type": "PipeSubstitution"
 | |
|                 }
 | |
|               }
 | |
|             ],
 | |
|             "commentStart": 0,
 | |
|             "end": 0,
 | |
|             "moduleId": 0,
 | |
|             "start": 0,
 | |
|             "type": "PipeExpression",
 | |
|             "type": "PipeExpression"
 | |
|           },
 | |
|           "moduleId": 0,
 | |
|           "start": 0,
 | |
|           "type": "VariableDeclarator"
 | |
|         },
 | |
|         "end": 0,
 | |
|         "kind": "const",
 | |
|         "moduleId": 0,
 | |
|         "preComments": [
 | |
|           "",
 | |
|           "",
 | |
|           "// Spar2"
 | |
|         ],
 | |
|         "start": 0,
 | |
|         "type": "VariableDeclaration",
 | |
|         "type": "VariableDeclaration"
 | |
|       },
 | |
|       {
 | |
|         "commentStart": 0,
 | |
|         "declaration": {
 | |
|           "commentStart": 0,
 | |
|           "end": 0,
 | |
|           "id": {
 | |
|             "commentStart": 0,
 | |
|             "end": 0,
 | |
|             "moduleId": 0,
 | |
|             "name": "spar002",
 | |
|             "start": 0,
 | |
|             "type": "Identifier"
 | |
|           },
 | |
|           "init": {
 | |
|             "arguments": [
 | |
|               {
 | |
|                 "type": "LabeledArg",
 | |
|                 "label": {
 | |
|                   "commentStart": 0,
 | |
|                   "end": 0,
 | |
|                   "moduleId": 0,
 | |
|                   "name": "length",
 | |
|                   "start": 0,
 | |
|                   "type": "Identifier"
 | |
|                 },
 | |
|                 "arg": {
 | |
|                   "commentStart": 0,
 | |
|                   "end": 0,
 | |
|                   "moduleId": 0,
 | |
|                   "raw": "1.8",
 | |
|                   "start": 0,
 | |
|                   "type": "Literal",
 | |
|                   "type": "Literal",
 | |
|                   "value": {
 | |
|                     "value": 1.8,
 | |
|                     "suffix": "None"
 | |
|                   }
 | |
|                 }
 | |
|               }
 | |
|             ],
 | |
|             "callee": {
 | |
|               "abs_path": false,
 | |
|               "commentStart": 0,
 | |
|               "end": 0,
 | |
|               "moduleId": 0,
 | |
|               "name": {
 | |
|                 "commentStart": 0,
 | |
|                 "end": 0,
 | |
|                 "moduleId": 0,
 | |
|                 "name": "extrude",
 | |
|                 "start": 0,
 | |
|                 "type": "Identifier"
 | |
|               },
 | |
|               "path": [],
 | |
|               "start": 0,
 | |
|               "type": "Name"
 | |
|             },
 | |
|             "commentStart": 0,
 | |
|             "end": 0,
 | |
|             "moduleId": 0,
 | |
|             "start": 0,
 | |
|             "type": "CallExpressionKw",
 | |
|             "type": "CallExpressionKw",
 | |
|             "unlabeled": {
 | |
|               "abs_path": false,
 | |
|               "commentStart": 0,
 | |
|               "end": 0,
 | |
|               "moduleId": 0,
 | |
|               "name": {
 | |
|                 "commentStart": 0,
 | |
|                 "end": 0,
 | |
|                 "moduleId": 0,
 | |
|                 "name": "profile007",
 | |
|                 "start": 0,
 | |
|                 "type": "Identifier"
 | |
|               },
 | |
|               "path": [],
 | |
|               "start": 0,
 | |
|               "type": "Name",
 | |
|               "type": "Name"
 | |
|             }
 | |
|           },
 | |
|           "moduleId": 0,
 | |
|           "start": 0,
 | |
|           "type": "VariableDeclarator"
 | |
|         },
 | |
|         "end": 0,
 | |
|         "kind": "const",
 | |
|         "moduleId": 0,
 | |
|         "start": 0,
 | |
|         "type": "VariableDeclaration",
 | |
|         "type": "VariableDeclaration"
 | |
|       },
 | |
|       {
 | |
|         "commentStart": 0,
 | |
|         "declaration": {
 | |
|           "commentStart": 0,
 | |
|           "end": 0,
 | |
|           "id": {
 | |
|             "commentStart": 0,
 | |
|             "end": 0,
 | |
|             "moduleId": 0,
 | |
|             "name": "newFrame",
 | |
|             "start": 0,
 | |
|             "type": "Identifier"
 | |
|           },
 | |
|           "init": {
 | |
|             "commentStart": 0,
 | |
|             "end": 0,
 | |
|             "left": {
 | |
|               "commentStart": 0,
 | |
|               "end": 0,
 | |
|               "left": {
 | |
|                 "abs_path": false,
 | |
|                 "commentStart": 0,
 | |
|                 "end": 0,
 | |
|                 "moduleId": 0,
 | |
|                 "name": {
 | |
|                   "commentStart": 0,
 | |
|                   "end": 0,
 | |
|                   "moduleId": 0,
 | |
|                   "name": "topFrame",
 | |
|                   "start": 0,
 | |
|                   "type": "Identifier"
 | |
|                 },
 | |
|                 "path": [],
 | |
|                 "start": 0,
 | |
|                 "type": "Name",
 | |
|                 "type": "Name"
 | |
|               },
 | |
|               "moduleId": 0,
 | |
|               "operator": "+",
 | |
|               "right": {
 | |
|                 "abs_path": false,
 | |
|                 "commentStart": 0,
 | |
|                 "end": 0,
 | |
|                 "moduleId": 0,
 | |
|                 "name": {
 | |
|                   "commentStart": 0,
 | |
|                   "end": 0,
 | |
|                   "moduleId": 0,
 | |
|                   "name": "spar001",
 | |
|                   "start": 0,
 | |
|                   "type": "Identifier"
 | |
|                 },
 | |
|                 "path": [],
 | |
|                 "start": 0,
 | |
|                 "type": "Name",
 | |
|                 "type": "Name"
 | |
|               },
 | |
|               "start": 0,
 | |
|               "type": "BinaryExpression",
 | |
|               "type": "BinaryExpression"
 | |
|             },
 | |
|             "moduleId": 0,
 | |
|             "operator": "+",
 | |
|             "right": {
 | |
|               "abs_path": false,
 | |
|               "commentStart": 0,
 | |
|               "end": 0,
 | |
|               "moduleId": 0,
 | |
|               "name": {
 | |
|                 "commentStart": 0,
 | |
|                 "end": 0,
 | |
|                 "moduleId": 0,
 | |
|                 "name": "spar002",
 | |
|                 "start": 0,
 | |
|                 "type": "Identifier"
 | |
|               },
 | |
|               "path": [],
 | |
|               "start": 0,
 | |
|               "type": "Name",
 | |
|               "type": "Name"
 | |
|             },
 | |
|             "start": 0,
 | |
|             "type": "BinaryExpression",
 | |
|             "type": "BinaryExpression"
 | |
|           },
 | |
|           "moduleId": 0,
 | |
|           "start": 0,
 | |
|           "type": "VariableDeclarator"
 | |
|         },
 | |
|         "end": 0,
 | |
|         "kind": "const",
 | |
|         "moduleId": 0,
 | |
|         "preComments": [
 | |
|           "",
 | |
|           "",
 | |
|           "// Combine the top frame with the intermediate support beams"
 | |
|         ],
 | |
|         "start": 0,
 | |
|         "type": "VariableDeclaration",
 | |
|         "type": "VariableDeclaration"
 | |
|       },
 | |
|       {
 | |
|         "commentStart": 0,
 | |
|         "declaration": {
 | |
|           "commentStart": 0,
 | |
|           "end": 0,
 | |
|           "id": {
 | |
|             "commentStart": 0,
 | |
|             "end": 0,
 | |
|             "moduleId": 0,
 | |
|             "name": "leg001Sketch",
 | |
|             "start": 0,
 | |
|             "type": "Identifier"
 | |
|           },
 | |
|           "init": {
 | |
|             "arguments": [],
 | |
|             "callee": {
 | |
|               "abs_path": false,
 | |
|               "commentStart": 0,
 | |
|               "end": 0,
 | |
|               "moduleId": 0,
 | |
|               "name": {
 | |
|                 "commentStart": 0,
 | |
|                 "end": 0,
 | |
|                 "moduleId": 0,
 | |
|                 "name": "startSketchOn",
 | |
|                 "start": 0,
 | |
|                 "type": "Identifier"
 | |
|               },
 | |
|               "path": [],
 | |
|               "start": 0,
 | |
|               "type": "Name"
 | |
|             },
 | |
|             "commentStart": 0,
 | |
|             "end": 0,
 | |
|             "moduleId": 0,
 | |
|             "start": 0,
 | |
|             "type": "CallExpressionKw",
 | |
|             "type": "CallExpressionKw",
 | |
|             "unlabeled": {
 | |
|               "arguments": [
 | |
|                 {
 | |
|                   "type": "LabeledArg",
 | |
|                   "label": {
 | |
|                     "commentStart": 0,
 | |
|                     "end": 0,
 | |
|                     "moduleId": 0,
 | |
|                     "name": "offset",
 | |
|                     "start": 0,
 | |
|                     "type": "Identifier"
 | |
|                   },
 | |
|                   "arg": {
 | |
|                     "commentStart": 0,
 | |
|                     "end": 0,
 | |
|                     "moduleId": 0,
 | |
|                     "raw": ".1",
 | |
|                     "start": 0,
 | |
|                     "type": "Literal",
 | |
|                     "type": "Literal",
 | |
|                     "value": {
 | |
|                       "value": 0.1,
 | |
|                       "suffix": "None"
 | |
|                     }
 | |
|                   }
 | |
|                 }
 | |
|               ],
 | |
|               "callee": {
 | |
|                 "abs_path": false,
 | |
|                 "commentStart": 0,
 | |
|                 "end": 0,
 | |
|                 "moduleId": 0,
 | |
|                 "name": {
 | |
|                   "commentStart": 0,
 | |
|                   "end": 0,
 | |
|                   "moduleId": 0,
 | |
|                   "name": "offsetPlane",
 | |
|                   "start": 0,
 | |
|                   "type": "Identifier"
 | |
|                 },
 | |
|                 "path": [],
 | |
|                 "start": 0,
 | |
|                 "type": "Name"
 | |
|               },
 | |
|               "commentStart": 0,
 | |
|               "end": 0,
 | |
|               "moduleId": 0,
 | |
|               "start": 0,
 | |
|               "type": "CallExpressionKw",
 | |
|               "type": "CallExpressionKw",
 | |
|               "unlabeled": {
 | |
|                 "abs_path": false,
 | |
|                 "commentStart": 0,
 | |
|                 "end": 0,
 | |
|                 "moduleId": 0,
 | |
|                 "name": {
 | |
|                   "commentStart": 0,
 | |
|                   "end": 0,
 | |
|                   "moduleId": 0,
 | |
|                   "name": "XY",
 | |
|                   "start": 0,
 | |
|                   "type": "Identifier"
 | |
|                 },
 | |
|                 "path": [],
 | |
|                 "start": 0,
 | |
|                 "type": "Name",
 | |
|                 "type": "Name"
 | |
|               }
 | |
|             }
 | |
|           },
 | |
|           "moduleId": 0,
 | |
|           "start": 0,
 | |
|           "type": "VariableDeclarator"
 | |
|         },
 | |
|         "end": 0,
 | |
|         "kind": "const",
 | |
|         "moduleId": 0,
 | |
|         "preComments": [
 | |
|           "",
 | |
|           "",
 | |
|           "// Create the two legs on the frame"
 | |
|         ],
 | |
|         "start": 0,
 | |
|         "type": "VariableDeclaration",
 | |
|         "type": "VariableDeclaration"
 | |
|       },
 | |
|       {
 | |
|         "commentStart": 0,
 | |
|         "declaration": {
 | |
|           "commentStart": 0,
 | |
|           "end": 0,
 | |
|           "id": {
 | |
|             "commentStart": 0,
 | |
|             "end": 0,
 | |
|             "moduleId": 0,
 | |
|             "name": "legProfile001",
 | |
|             "start": 0,
 | |
|             "type": "Identifier"
 | |
|           },
 | |
|           "init": {
 | |
|             "body": [
 | |
|               {
 | |
|                 "arguments": [
 | |
|                   {
 | |
|                     "type": "LabeledArg",
 | |
|                     "label": {
 | |
|                       "commentStart": 0,
 | |
|                       "end": 0,
 | |
|                       "moduleId": 0,
 | |
|                       "name": "at",
 | |
|                       "start": 0,
 | |
|                       "type": "Identifier"
 | |
|                     },
 | |
|                     "arg": {
 | |
|                       "commentStart": 0,
 | |
|                       "elements": [
 | |
|                         {
 | |
|                           "commentStart": 0,
 | |
|                           "end": 0,
 | |
|                           "moduleId": 0,
 | |
|                           "raw": "0",
 | |
|                           "start": 0,
 | |
|                           "type": "Literal",
 | |
|                           "type": "Literal",
 | |
|                           "value": {
 | |
|                             "value": 0.0,
 | |
|                             "suffix": "None"
 | |
|                           }
 | |
|                         },
 | |
|                         {
 | |
|                           "commentStart": 0,
 | |
|                           "end": 0,
 | |
|                           "left": {
 | |
|                             "argument": {
 | |
|                               "abs_path": false,
 | |
|                               "commentStart": 0,
 | |
|                               "end": 0,
 | |
|                               "moduleId": 0,
 | |
|                               "name": {
 | |
|                                 "commentStart": 0,
 | |
|                                 "end": 0,
 | |
|                                 "moduleId": 0,
 | |
|                                 "name": "totalWidth",
 | |
|                                 "start": 0,
 | |
|                                 "type": "Identifier"
 | |
|                               },
 | |
|                               "path": [],
 | |
|                               "start": 0,
 | |
|                               "type": "Name",
 | |
|                               "type": "Name"
 | |
|                             },
 | |
|                             "commentStart": 0,
 | |
|                             "end": 0,
 | |
|                             "moduleId": 0,
 | |
|                             "operator": "-",
 | |
|                             "start": 0,
 | |
|                             "type": "UnaryExpression",
 | |
|                             "type": "UnaryExpression"
 | |
|                           },
 | |
|                           "moduleId": 0,
 | |
|                           "operator": "/",
 | |
|                           "right": {
 | |
|                             "commentStart": 0,
 | |
|                             "end": 0,
 | |
|                             "moduleId": 0,
 | |
|                             "raw": "2",
 | |
|                             "start": 0,
 | |
|                             "type": "Literal",
 | |
|                             "type": "Literal",
 | |
|                             "value": {
 | |
|                               "value": 2.0,
 | |
|                               "suffix": "None"
 | |
|                             }
 | |
|                           },
 | |
|                           "start": 0,
 | |
|                           "type": "BinaryExpression",
 | |
|                           "type": "BinaryExpression"
 | |
|                         }
 | |
|                       ],
 | |
|                       "end": 0,
 | |
|                       "moduleId": 0,
 | |
|                       "start": 0,
 | |
|                       "type": "ArrayExpression",
 | |
|                       "type": "ArrayExpression"
 | |
|                     }
 | |
|                   }
 | |
|                 ],
 | |
|                 "callee": {
 | |
|                   "abs_path": false,
 | |
|                   "commentStart": 0,
 | |
|                   "end": 0,
 | |
|                   "moduleId": 0,
 | |
|                   "name": {
 | |
|                     "commentStart": 0,
 | |
|                     "end": 0,
 | |
|                     "moduleId": 0,
 | |
|                     "name": "startProfile",
 | |
|                     "start": 0,
 | |
|                     "type": "Identifier"
 | |
|                   },
 | |
|                   "path": [],
 | |
|                   "start": 0,
 | |
|                   "type": "Name"
 | |
|                 },
 | |
|                 "commentStart": 0,
 | |
|                 "end": 0,
 | |
|                 "moduleId": 0,
 | |
|                 "start": 0,
 | |
|                 "type": "CallExpressionKw",
 | |
|                 "type": "CallExpressionKw",
 | |
|                 "unlabeled": {
 | |
|                   "abs_path": false,
 | |
|                   "commentStart": 0,
 | |
|                   "end": 0,
 | |
|                   "moduleId": 0,
 | |
|                   "name": {
 | |
|                     "commentStart": 0,
 | |
|                     "end": 0,
 | |
|                     "moduleId": 0,
 | |
|                     "name": "leg001Sketch",
 | |
|                     "start": 0,
 | |
|                     "type": "Identifier"
 | |
|                   },
 | |
|                   "path": [],
 | |
|                   "start": 0,
 | |
|                   "type": "Name",
 | |
|                   "type": "Name"
 | |
|                 }
 | |
|               },
 | |
|               {
 | |
|                 "arguments": [
 | |
|                   {
 | |
|                     "type": "LabeledArg",
 | |
|                     "label": {
 | |
|                       "commentStart": 0,
 | |
|                       "end": 0,
 | |
|                       "moduleId": 0,
 | |
|                       "name": "length",
 | |
|                       "start": 0,
 | |
|                       "type": "Identifier"
 | |
|                     },
 | |
|                     "arg": {
 | |
|                       "commentStart": 0,
 | |
|                       "end": 0,
 | |
|                       "left": {
 | |
|                         "abs_path": false,
 | |
|                         "commentStart": 0,
 | |
|                         "end": 0,
 | |
|                         "moduleId": 0,
 | |
|                         "name": {
 | |
|                           "commentStart": 0,
 | |
|                           "end": 0,
 | |
|                           "moduleId": 0,
 | |
|                           "name": "beamLength",
 | |
|                           "start": 0,
 | |
|                           "type": "Identifier"
 | |
|                         },
 | |
|                         "path": [],
 | |
|                         "start": 0,
 | |
|                         "type": "Name",
 | |
|                         "type": "Name"
 | |
|                       },
 | |
|                       "moduleId": 0,
 | |
|                       "operator": "-",
 | |
|                       "right": {
 | |
|                         "commentStart": 0,
 | |
|                         "end": 0,
 | |
|                         "moduleId": 0,
 | |
|                         "raw": ".1",
 | |
|                         "start": 0,
 | |
|                         "type": "Literal",
 | |
|                         "type": "Literal",
 | |
|                         "value": {
 | |
|                           "value": 0.1,
 | |
|                           "suffix": "None"
 | |
|                         }
 | |
|                       },
 | |
|                       "start": 0,
 | |
|                       "type": "BinaryExpression",
 | |
|                       "type": "BinaryExpression"
 | |
|                     }
 | |
|                   }
 | |
|                 ],
 | |
|                 "callee": {
 | |
|                   "abs_path": false,
 | |
|                   "commentStart": 0,
 | |
|                   "end": 0,
 | |
|                   "moduleId": 0,
 | |
|                   "name": {
 | |
|                     "commentStart": 0,
 | |
|                     "end": 0,
 | |
|                     "moduleId": 0,
 | |
|                     "name": "xLine",
 | |
|                     "start": 0,
 | |
|                     "type": "Identifier"
 | |
|                   },
 | |
|                   "path": [],
 | |
|                   "start": 0,
 | |
|                   "type": "Name"
 | |
|                 },
 | |
|                 "commentStart": 0,
 | |
|                 "end": 0,
 | |
|                 "moduleId": 0,
 | |
|                 "start": 0,
 | |
|                 "type": "CallExpressionKw",
 | |
|                 "type": "CallExpressionKw",
 | |
|                 "unlabeled": {
 | |
|                   "commentStart": 0,
 | |
|                   "end": 0,
 | |
|                   "moduleId": 0,
 | |
|                   "start": 0,
 | |
|                   "type": "PipeSubstitution",
 | |
|                   "type": "PipeSubstitution"
 | |
|                 }
 | |
|               },
 | |
|               {
 | |
|                 "arguments": [
 | |
|                   {
 | |
|                     "type": "LabeledArg",
 | |
|                     "label": {
 | |
|                       "commentStart": 0,
 | |
|                       "end": 0,
 | |
|                       "moduleId": 0,
 | |
|                       "name": "length",
 | |
|                       "start": 0,
 | |
|                       "type": "Identifier"
 | |
|                     },
 | |
|                     "arg": {
 | |
|                       "commentStart": 0,
 | |
|                       "end": 0,
 | |
|                       "left": {
 | |
|                         "abs_path": false,
 | |
|                         "commentStart": 0,
 | |
|                         "end": 0,
 | |
|                         "moduleId": 0,
 | |
|                         "name": {
 | |
|                           "commentStart": 0,
 | |
|                           "end": 0,
 | |
|                           "moduleId": 0,
 | |
|                           "name": "beamWidth",
 | |
|                           "start": 0,
 | |
|                           "type": "Identifier"
 | |
|                         },
 | |
|                         "path": [],
 | |
|                         "start": 0,
 | |
|                         "type": "Name",
 | |
|                         "type": "Name"
 | |
|                       },
 | |
|                       "moduleId": 0,
 | |
|                       "operator": "-",
 | |
|                       "right": {
 | |
|                         "commentStart": 0,
 | |
|                         "end": 0,
 | |
|                         "moduleId": 0,
 | |
|                         "raw": "1",
 | |
|                         "start": 0,
 | |
|                         "type": "Literal",
 | |
|                         "type": "Literal",
 | |
|                         "value": {
 | |
|                           "value": 1.0,
 | |
|                           "suffix": "None"
 | |
|                         }
 | |
|                       },
 | |
|                       "start": 0,
 | |
|                       "type": "BinaryExpression",
 | |
|                       "type": "BinaryExpression"
 | |
|                     }
 | |
|                   }
 | |
|                 ],
 | |
|                 "callee": {
 | |
|                   "abs_path": false,
 | |
|                   "commentStart": 0,
 | |
|                   "end": 0,
 | |
|                   "moduleId": 0,
 | |
|                   "name": {
 | |
|                     "commentStart": 0,
 | |
|                     "end": 0,
 | |
|                     "moduleId": 0,
 | |
|                     "name": "yLine",
 | |
|                     "start": 0,
 | |
|                     "type": "Identifier"
 | |
|                   },
 | |
|                   "path": [],
 | |
|                   "start": 0,
 | |
|                   "type": "Name"
 | |
|                 },
 | |
|                 "commentStart": 0,
 | |
|                 "end": 0,
 | |
|                 "moduleId": 0,
 | |
|                 "start": 0,
 | |
|                 "type": "CallExpressionKw",
 | |
|                 "type": "CallExpressionKw",
 | |
|                 "unlabeled": {
 | |
|                   "commentStart": 0,
 | |
|                   "end": 0,
 | |
|                   "moduleId": 0,
 | |
|                   "start": 0,
 | |
|                   "type": "PipeSubstitution",
 | |
|                   "type": "PipeSubstitution"
 | |
|                 }
 | |
|               },
 | |
|               {
 | |
|                 "arguments": [
 | |
|                   {
 | |
|                     "type": "LabeledArg",
 | |
|                     "label": {
 | |
|                       "commentStart": 0,
 | |
|                       "end": 0,
 | |
|                       "moduleId": 0,
 | |
|                       "name": "endAbsolute",
 | |
|                       "start": 0,
 | |
|                       "type": "Identifier"
 | |
|                     },
 | |
|                     "arg": {
 | |
|                       "arguments": [],
 | |
|                       "callee": {
 | |
|                         "abs_path": false,
 | |
|                         "commentStart": 0,
 | |
|                         "end": 0,
 | |
|                         "moduleId": 0,
 | |
|                         "name": {
 | |
|                           "commentStart": 0,
 | |
|                           "end": 0,
 | |
|                           "moduleId": 0,
 | |
|                           "name": "profileStartX",
 | |
|                           "start": 0,
 | |
|                           "type": "Identifier"
 | |
|                         },
 | |
|                         "path": [],
 | |
|                         "start": 0,
 | |
|                         "type": "Name"
 | |
|                       },
 | |
|                       "commentStart": 0,
 | |
|                       "end": 0,
 | |
|                       "moduleId": 0,
 | |
|                       "start": 0,
 | |
|                       "type": "CallExpressionKw",
 | |
|                       "type": "CallExpressionKw",
 | |
|                       "unlabeled": {
 | |
|                         "commentStart": 0,
 | |
|                         "end": 0,
 | |
|                         "moduleId": 0,
 | |
|                         "start": 0,
 | |
|                         "type": "PipeSubstitution",
 | |
|                         "type": "PipeSubstitution"
 | |
|                       }
 | |
|                     }
 | |
|                   }
 | |
|                 ],
 | |
|                 "callee": {
 | |
|                   "abs_path": false,
 | |
|                   "commentStart": 0,
 | |
|                   "end": 0,
 | |
|                   "moduleId": 0,
 | |
|                   "name": {
 | |
|                     "commentStart": 0,
 | |
|                     "end": 0,
 | |
|                     "moduleId": 0,
 | |
|                     "name": "xLine",
 | |
|                     "start": 0,
 | |
|                     "type": "Identifier"
 | |
|                   },
 | |
|                   "path": [],
 | |
|                   "start": 0,
 | |
|                   "type": "Name"
 | |
|                 },
 | |
|                 "commentStart": 0,
 | |
|                 "end": 0,
 | |
|                 "moduleId": 0,
 | |
|                 "start": 0,
 | |
|                 "type": "CallExpressionKw",
 | |
|                 "type": "CallExpressionKw",
 | |
|                 "unlabeled": {
 | |
|                   "commentStart": 0,
 | |
|                   "end": 0,
 | |
|                   "moduleId": 0,
 | |
|                   "start": 0,
 | |
|                   "type": "PipeSubstitution",
 | |
|                   "type": "PipeSubstitution"
 | |
|                 }
 | |
|               },
 | |
|               {
 | |
|                 "arguments": [],
 | |
|                 "callee": {
 | |
|                   "abs_path": false,
 | |
|                   "commentStart": 0,
 | |
|                   "end": 0,
 | |
|                   "moduleId": 0,
 | |
|                   "name": {
 | |
|                     "commentStart": 0,
 | |
|                     "end": 0,
 | |
|                     "moduleId": 0,
 | |
|                     "name": "close",
 | |
|                     "start": 0,
 | |
|                     "type": "Identifier"
 | |
|                   },
 | |
|                   "path": [],
 | |
|                   "start": 0,
 | |
|                   "type": "Name"
 | |
|                 },
 | |
|                 "commentStart": 0,
 | |
|                 "end": 0,
 | |
|                 "moduleId": 0,
 | |
|                 "start": 0,
 | |
|                 "type": "CallExpressionKw",
 | |
|                 "type": "CallExpressionKw",
 | |
|                 "unlabeled": {
 | |
|                   "commentStart": 0,
 | |
|                   "end": 0,
 | |
|                   "moduleId": 0,
 | |
|                   "start": 0,
 | |
|                   "type": "PipeSubstitution",
 | |
|                   "type": "PipeSubstitution"
 | |
|                 }
 | |
|               }
 | |
|             ],
 | |
|             "commentStart": 0,
 | |
|             "end": 0,
 | |
|             "moduleId": 0,
 | |
|             "start": 0,
 | |
|             "type": "PipeExpression",
 | |
|             "type": "PipeExpression"
 | |
|           },
 | |
|           "moduleId": 0,
 | |
|           "start": 0,
 | |
|           "type": "VariableDeclarator"
 | |
|         },
 | |
|         "end": 0,
 | |
|         "kind": "const",
 | |
|         "moduleId": 0,
 | |
|         "start": 0,
 | |
|         "type": "VariableDeclaration",
 | |
|         "type": "VariableDeclaration"
 | |
|       },
 | |
|       {
 | |
|         "commentStart": 0,
 | |
|         "declaration": {
 | |
|           "commentStart": 0,
 | |
|           "end": 0,
 | |
|           "id": {
 | |
|             "commentStart": 0,
 | |
|             "end": 0,
 | |
|             "moduleId": 0,
 | |
|             "name": "legProfile002",
 | |
|             "start": 0,
 | |
|             "type": "Identifier"
 | |
|           },
 | |
|           "init": {
 | |
|             "body": [
 | |
|               {
 | |
|                 "arguments": [
 | |
|                   {
 | |
|                     "type": "LabeledArg",
 | |
|                     "label": {
 | |
|                       "commentStart": 0,
 | |
|                       "end": 0,
 | |
|                       "moduleId": 0,
 | |
|                       "name": "at",
 | |
|                       "start": 0,
 | |
|                       "type": "Identifier"
 | |
|                     },
 | |
|                     "arg": {
 | |
|                       "commentStart": 0,
 | |
|                       "elements": [
 | |
|                         {
 | |
|                           "commentStart": 0,
 | |
|                           "end": 0,
 | |
|                           "moduleId": 0,
 | |
|                           "raw": "0",
 | |
|                           "start": 0,
 | |
|                           "type": "Literal",
 | |
|                           "type": "Literal",
 | |
|                           "value": {
 | |
|                             "value": 0.0,
 | |
|                             "suffix": "None"
 | |
|                           }
 | |
|                         },
 | |
|                         {
 | |
|                           "commentStart": 0,
 | |
|                           "end": 0,
 | |
|                           "left": {
 | |
|                             "abs_path": false,
 | |
|                             "commentStart": 0,
 | |
|                             "end": 0,
 | |
|                             "moduleId": 0,
 | |
|                             "name": {
 | |
|                               "commentStart": 0,
 | |
|                               "end": 0,
 | |
|                               "moduleId": 0,
 | |
|                               "name": "totalWidth",
 | |
|                               "start": 0,
 | |
|                               "type": "Identifier"
 | |
|                             },
 | |
|                             "path": [],
 | |
|                             "start": 0,
 | |
|                             "type": "Name",
 | |
|                             "type": "Name"
 | |
|                           },
 | |
|                           "moduleId": 0,
 | |
|                           "operator": "/",
 | |
|                           "right": {
 | |
|                             "commentStart": 0,
 | |
|                             "end": 0,
 | |
|                             "moduleId": 0,
 | |
|                             "raw": "2",
 | |
|                             "start": 0,
 | |
|                             "type": "Literal",
 | |
|                             "type": "Literal",
 | |
|                             "value": {
 | |
|                               "value": 2.0,
 | |
|                               "suffix": "None"
 | |
|                             }
 | |
|                           },
 | |
|                           "start": 0,
 | |
|                           "type": "BinaryExpression",
 | |
|                           "type": "BinaryExpression"
 | |
|                         }
 | |
|                       ],
 | |
|                       "end": 0,
 | |
|                       "moduleId": 0,
 | |
|                       "start": 0,
 | |
|                       "type": "ArrayExpression",
 | |
|                       "type": "ArrayExpression"
 | |
|                     }
 | |
|                   }
 | |
|                 ],
 | |
|                 "callee": {
 | |
|                   "abs_path": false,
 | |
|                   "commentStart": 0,
 | |
|                   "end": 0,
 | |
|                   "moduleId": 0,
 | |
|                   "name": {
 | |
|                     "commentStart": 0,
 | |
|                     "end": 0,
 | |
|                     "moduleId": 0,
 | |
|                     "name": "startProfile",
 | |
|                     "start": 0,
 | |
|                     "type": "Identifier"
 | |
|                   },
 | |
|                   "path": [],
 | |
|                   "start": 0,
 | |
|                   "type": "Name"
 | |
|                 },
 | |
|                 "commentStart": 0,
 | |
|                 "end": 0,
 | |
|                 "moduleId": 0,
 | |
|                 "start": 0,
 | |
|                 "type": "CallExpressionKw",
 | |
|                 "type": "CallExpressionKw",
 | |
|                 "unlabeled": {
 | |
|                   "abs_path": false,
 | |
|                   "commentStart": 0,
 | |
|                   "end": 0,
 | |
|                   "moduleId": 0,
 | |
|                   "name": {
 | |
|                     "commentStart": 0,
 | |
|                     "end": 0,
 | |
|                     "moduleId": 0,
 | |
|                     "name": "leg001Sketch",
 | |
|                     "start": 0,
 | |
|                     "type": "Identifier"
 | |
|                   },
 | |
|                   "path": [],
 | |
|                   "start": 0,
 | |
|                   "type": "Name",
 | |
|                   "type": "Name"
 | |
|                 }
 | |
|               },
 | |
|               {
 | |
|                 "arguments": [
 | |
|                   {
 | |
|                     "type": "LabeledArg",
 | |
|                     "label": {
 | |
|                       "commentStart": 0,
 | |
|                       "end": 0,
 | |
|                       "moduleId": 0,
 | |
|                       "name": "length",
 | |
|                       "start": 0,
 | |
|                       "type": "Identifier"
 | |
|                     },
 | |
|                     "arg": {
 | |
|                       "commentStart": 0,
 | |
|                       "end": 0,
 | |
|                       "left": {
 | |
|                         "abs_path": false,
 | |
|                         "commentStart": 0,
 | |
|                         "end": 0,
 | |
|                         "moduleId": 0,
 | |
|                         "name": {
 | |
|                           "commentStart": 0,
 | |
|                           "end": 0,
 | |
|                           "moduleId": 0,
 | |
|                           "name": "beamLength",
 | |
|                           "start": 0,
 | |
|                           "type": "Identifier"
 | |
|                         },
 | |
|                         "path": [],
 | |
|                         "start": 0,
 | |
|                         "type": "Name",
 | |
|                         "type": "Name"
 | |
|                       },
 | |
|                       "moduleId": 0,
 | |
|                       "operator": "-",
 | |
|                       "right": {
 | |
|                         "commentStart": 0,
 | |
|                         "end": 0,
 | |
|                         "moduleId": 0,
 | |
|                         "raw": ".1",
 | |
|                         "start": 0,
 | |
|                         "type": "Literal",
 | |
|                         "type": "Literal",
 | |
|                         "value": {
 | |
|                           "value": 0.1,
 | |
|                           "suffix": "None"
 | |
|                         }
 | |
|                       },
 | |
|                       "start": 0,
 | |
|                       "type": "BinaryExpression",
 | |
|                       "type": "BinaryExpression"
 | |
|                     }
 | |
|                   }
 | |
|                 ],
 | |
|                 "callee": {
 | |
|                   "abs_path": false,
 | |
|                   "commentStart": 0,
 | |
|                   "end": 0,
 | |
|                   "moduleId": 0,
 | |
|                   "name": {
 | |
|                     "commentStart": 0,
 | |
|                     "end": 0,
 | |
|                     "moduleId": 0,
 | |
|                     "name": "xLine",
 | |
|                     "start": 0,
 | |
|                     "type": "Identifier"
 | |
|                   },
 | |
|                   "path": [],
 | |
|                   "start": 0,
 | |
|                   "type": "Name"
 | |
|                 },
 | |
|                 "commentStart": 0,
 | |
|                 "end": 0,
 | |
|                 "moduleId": 0,
 | |
|                 "start": 0,
 | |
|                 "type": "CallExpressionKw",
 | |
|                 "type": "CallExpressionKw",
 | |
|                 "unlabeled": {
 | |
|                   "commentStart": 0,
 | |
|                   "end": 0,
 | |
|                   "moduleId": 0,
 | |
|                   "start": 0,
 | |
|                   "type": "PipeSubstitution",
 | |
|                   "type": "PipeSubstitution"
 | |
|                 }
 | |
|               },
 | |
|               {
 | |
|                 "arguments": [
 | |
|                   {
 | |
|                     "type": "LabeledArg",
 | |
|                     "label": {
 | |
|                       "commentStart": 0,
 | |
|                       "end": 0,
 | |
|                       "moduleId": 0,
 | |
|                       "name": "length",
 | |
|                       "start": 0,
 | |
|                       "type": "Identifier"
 | |
|                     },
 | |
|                     "arg": {
 | |
|                       "argument": {
 | |
|                         "commentStart": 0,
 | |
|                         "end": 0,
 | |
|                         "left": {
 | |
|                           "abs_path": false,
 | |
|                           "commentStart": 0,
 | |
|                           "end": 0,
 | |
|                           "moduleId": 0,
 | |
|                           "name": {
 | |
|                             "commentStart": 0,
 | |
|                             "end": 0,
 | |
|                             "moduleId": 0,
 | |
|                             "name": "beamWidth",
 | |
|                             "start": 0,
 | |
|                             "type": "Identifier"
 | |
|                           },
 | |
|                           "path": [],
 | |
|                           "start": 0,
 | |
|                           "type": "Name",
 | |
|                           "type": "Name"
 | |
|                         },
 | |
|                         "moduleId": 0,
 | |
|                         "operator": "-",
 | |
|                         "right": {
 | |
|                           "commentStart": 0,
 | |
|                           "end": 0,
 | |
|                           "moduleId": 0,
 | |
|                           "raw": "1",
 | |
|                           "start": 0,
 | |
|                           "type": "Literal",
 | |
|                           "type": "Literal",
 | |
|                           "value": {
 | |
|                             "value": 1.0,
 | |
|                             "suffix": "None"
 | |
|                           }
 | |
|                         },
 | |
|                         "start": 0,
 | |
|                         "type": "BinaryExpression",
 | |
|                         "type": "BinaryExpression"
 | |
|                       },
 | |
|                       "commentStart": 0,
 | |
|                       "end": 0,
 | |
|                       "moduleId": 0,
 | |
|                       "operator": "-",
 | |
|                       "start": 0,
 | |
|                       "type": "UnaryExpression",
 | |
|                       "type": "UnaryExpression"
 | |
|                     }
 | |
|                   }
 | |
|                 ],
 | |
|                 "callee": {
 | |
|                   "abs_path": false,
 | |
|                   "commentStart": 0,
 | |
|                   "end": 0,
 | |
|                   "moduleId": 0,
 | |
|                   "name": {
 | |
|                     "commentStart": 0,
 | |
|                     "end": 0,
 | |
|                     "moduleId": 0,
 | |
|                     "name": "yLine",
 | |
|                     "start": 0,
 | |
|                     "type": "Identifier"
 | |
|                   },
 | |
|                   "path": [],
 | |
|                   "start": 0,
 | |
|                   "type": "Name"
 | |
|                 },
 | |
|                 "commentStart": 0,
 | |
|                 "end": 0,
 | |
|                 "moduleId": 0,
 | |
|                 "start": 0,
 | |
|                 "type": "CallExpressionKw",
 | |
|                 "type": "CallExpressionKw",
 | |
|                 "unlabeled": {
 | |
|                   "commentStart": 0,
 | |
|                   "end": 0,
 | |
|                   "moduleId": 0,
 | |
|                   "start": 0,
 | |
|                   "type": "PipeSubstitution",
 | |
|                   "type": "PipeSubstitution"
 | |
|                 }
 | |
|               },
 | |
|               {
 | |
|                 "arguments": [
 | |
|                   {
 | |
|                     "type": "LabeledArg",
 | |
|                     "label": {
 | |
|                       "commentStart": 0,
 | |
|                       "end": 0,
 | |
|                       "moduleId": 0,
 | |
|                       "name": "endAbsolute",
 | |
|                       "start": 0,
 | |
|                       "type": "Identifier"
 | |
|                     },
 | |
|                     "arg": {
 | |
|                       "arguments": [],
 | |
|                       "callee": {
 | |
|                         "abs_path": false,
 | |
|                         "commentStart": 0,
 | |
|                         "end": 0,
 | |
|                         "moduleId": 0,
 | |
|                         "name": {
 | |
|                           "commentStart": 0,
 | |
|                           "end": 0,
 | |
|                           "moduleId": 0,
 | |
|                           "name": "profileStartX",
 | |
|                           "start": 0,
 | |
|                           "type": "Identifier"
 | |
|                         },
 | |
|                         "path": [],
 | |
|                         "start": 0,
 | |
|                         "type": "Name"
 | |
|                       },
 | |
|                       "commentStart": 0,
 | |
|                       "end": 0,
 | |
|                       "moduleId": 0,
 | |
|                       "start": 0,
 | |
|                       "type": "CallExpressionKw",
 | |
|                       "type": "CallExpressionKw",
 | |
|                       "unlabeled": {
 | |
|                         "commentStart": 0,
 | |
|                         "end": 0,
 | |
|                         "moduleId": 0,
 | |
|                         "start": 0,
 | |
|                         "type": "PipeSubstitution",
 | |
|                         "type": "PipeSubstitution"
 | |
|                       }
 | |
|                     }
 | |
|                   }
 | |
|                 ],
 | |
|                 "callee": {
 | |
|                   "abs_path": false,
 | |
|                   "commentStart": 0,
 | |
|                   "end": 0,
 | |
|                   "moduleId": 0,
 | |
|                   "name": {
 | |
|                     "commentStart": 0,
 | |
|                     "end": 0,
 | |
|                     "moduleId": 0,
 | |
|                     "name": "xLine",
 | |
|                     "start": 0,
 | |
|                     "type": "Identifier"
 | |
|                   },
 | |
|                   "path": [],
 | |
|                   "start": 0,
 | |
|                   "type": "Name"
 | |
|                 },
 | |
|                 "commentStart": 0,
 | |
|                 "end": 0,
 | |
|                 "moduleId": 0,
 | |
|                 "start": 0,
 | |
|                 "type": "CallExpressionKw",
 | |
|                 "type": "CallExpressionKw",
 | |
|                 "unlabeled": {
 | |
|                   "commentStart": 0,
 | |
|                   "end": 0,
 | |
|                   "moduleId": 0,
 | |
|                   "start": 0,
 | |
|                   "type": "PipeSubstitution",
 | |
|                   "type": "PipeSubstitution"
 | |
|                 }
 | |
|               },
 | |
|               {
 | |
|                 "arguments": [],
 | |
|                 "callee": {
 | |
|                   "abs_path": false,
 | |
|                   "commentStart": 0,
 | |
|                   "end": 0,
 | |
|                   "moduleId": 0,
 | |
|                   "name": {
 | |
|                     "commentStart": 0,
 | |
|                     "end": 0,
 | |
|                     "moduleId": 0,
 | |
|                     "name": "close",
 | |
|                     "start": 0,
 | |
|                     "type": "Identifier"
 | |
|                   },
 | |
|                   "path": [],
 | |
|                   "start": 0,
 | |
|                   "type": "Name"
 | |
|                 },
 | |
|                 "commentStart": 0,
 | |
|                 "end": 0,
 | |
|                 "moduleId": 0,
 | |
|                 "start": 0,
 | |
|                 "type": "CallExpressionKw",
 | |
|                 "type": "CallExpressionKw",
 | |
|                 "unlabeled": {
 | |
|                   "commentStart": 0,
 | |
|                   "end": 0,
 | |
|                   "moduleId": 0,
 | |
|                   "start": 0,
 | |
|                   "type": "PipeSubstitution",
 | |
|                   "type": "PipeSubstitution"
 | |
|                 }
 | |
|               }
 | |
|             ],
 | |
|             "commentStart": 0,
 | |
|             "end": 0,
 | |
|             "moduleId": 0,
 | |
|             "start": 0,
 | |
|             "type": "PipeExpression",
 | |
|             "type": "PipeExpression"
 | |
|           },
 | |
|           "moduleId": 0,
 | |
|           "start": 0,
 | |
|           "type": "VariableDeclarator"
 | |
|         },
 | |
|         "end": 0,
 | |
|         "kind": "const",
 | |
|         "moduleId": 0,
 | |
|         "start": 0,
 | |
|         "type": "VariableDeclaration",
 | |
|         "type": "VariableDeclaration"
 | |
|       },
 | |
|       {
 | |
|         "commentStart": 0,
 | |
|         "declaration": {
 | |
|           "commentStart": 0,
 | |
|           "end": 0,
 | |
|           "id": {
 | |
|             "commentStart": 0,
 | |
|             "end": 0,
 | |
|             "moduleId": 0,
 | |
|             "name": "leg001",
 | |
|             "start": 0,
 | |
|             "type": "Identifier"
 | |
|           },
 | |
|           "init": {
 | |
|             "arguments": [
 | |
|               {
 | |
|                 "type": "LabeledArg",
 | |
|                 "label": {
 | |
|                   "commentStart": 0,
 | |
|                   "end": 0,
 | |
|                   "moduleId": 0,
 | |
|                   "name": "length",
 | |
|                   "start": 0,
 | |
|                   "type": "Identifier"
 | |
|                 },
 | |
|                 "arg": {
 | |
|                   "commentStart": 0,
 | |
|                   "end": 0,
 | |
|                   "left": {
 | |
|                     "argument": {
 | |
|                       "abs_path": false,
 | |
|                       "commentStart": 0,
 | |
|                       "end": 0,
 | |
|                       "moduleId": 0,
 | |
|                       "name": {
 | |
|                         "commentStart": 0,
 | |
|                         "end": 0,
 | |
|                         "moduleId": 0,
 | |
|                         "name": "legHeight",
 | |
|                         "start": 0,
 | |
|                         "type": "Identifier"
 | |
|                       },
 | |
|                       "path": [],
 | |
|                       "start": 0,
 | |
|                       "type": "Name",
 | |
|                       "type": "Name"
 | |
|                     },
 | |
|                     "commentStart": 0,
 | |
|                     "end": 0,
 | |
|                     "moduleId": 0,
 | |
|                     "operator": "-",
 | |
|                     "start": 0,
 | |
|                     "type": "UnaryExpression",
 | |
|                     "type": "UnaryExpression"
 | |
|                   },
 | |
|                   "moduleId": 0,
 | |
|                   "operator": "-",
 | |
|                   "right": {
 | |
|                     "commentStart": 0,
 | |
|                     "end": 0,
 | |
|                     "moduleId": 0,
 | |
|                     "raw": ".1",
 | |
|                     "start": 0,
 | |
|                     "type": "Literal",
 | |
|                     "type": "Literal",
 | |
|                     "value": {
 | |
|                       "value": 0.1,
 | |
|                       "suffix": "None"
 | |
|                     }
 | |
|                   },
 | |
|                   "start": 0,
 | |
|                   "type": "BinaryExpression",
 | |
|                   "type": "BinaryExpression"
 | |
|                 }
 | |
|               }
 | |
|             ],
 | |
|             "callee": {
 | |
|               "abs_path": false,
 | |
|               "commentStart": 0,
 | |
|               "end": 0,
 | |
|               "moduleId": 0,
 | |
|               "name": {
 | |
|                 "commentStart": 0,
 | |
|                 "end": 0,
 | |
|                 "moduleId": 0,
 | |
|                 "name": "extrude",
 | |
|                 "start": 0,
 | |
|                 "type": "Identifier"
 | |
|               },
 | |
|               "path": [],
 | |
|               "start": 0,
 | |
|               "type": "Name"
 | |
|             },
 | |
|             "commentStart": 0,
 | |
|             "end": 0,
 | |
|             "moduleId": 0,
 | |
|             "start": 0,
 | |
|             "type": "CallExpressionKw",
 | |
|             "type": "CallExpressionKw",
 | |
|             "unlabeled": {
 | |
|               "abs_path": false,
 | |
|               "commentStart": 0,
 | |
|               "end": 0,
 | |
|               "moduleId": 0,
 | |
|               "name": {
 | |
|                 "commentStart": 0,
 | |
|                 "end": 0,
 | |
|                 "moduleId": 0,
 | |
|                 "name": "legProfile001",
 | |
|                 "start": 0,
 | |
|                 "type": "Identifier"
 | |
|               },
 | |
|               "path": [],
 | |
|               "start": 0,
 | |
|               "type": "Name",
 | |
|               "type": "Name"
 | |
|             }
 | |
|           },
 | |
|           "moduleId": 0,
 | |
|           "start": 0,
 | |
|           "type": "VariableDeclarator"
 | |
|         },
 | |
|         "end": 0,
 | |
|         "kind": "const",
 | |
|         "moduleId": 0,
 | |
|         "start": 0,
 | |
|         "type": "VariableDeclaration",
 | |
|         "type": "VariableDeclaration"
 | |
|       },
 | |
|       {
 | |
|         "commentStart": 0,
 | |
|         "declaration": {
 | |
|           "commentStart": 0,
 | |
|           "end": 0,
 | |
|           "id": {
 | |
|             "commentStart": 0,
 | |
|             "end": 0,
 | |
|             "moduleId": 0,
 | |
|             "name": "leg002",
 | |
|             "start": 0,
 | |
|             "type": "Identifier"
 | |
|           },
 | |
|           "init": {
 | |
|             "arguments": [
 | |
|               {
 | |
|                 "type": "LabeledArg",
 | |
|                 "label": {
 | |
|                   "commentStart": 0,
 | |
|                   "end": 0,
 | |
|                   "moduleId": 0,
 | |
|                   "name": "length",
 | |
|                   "start": 0,
 | |
|                   "type": "Identifier"
 | |
|                 },
 | |
|                 "arg": {
 | |
|                   "commentStart": 0,
 | |
|                   "end": 0,
 | |
|                   "left": {
 | |
|                     "argument": {
 | |
|                       "abs_path": false,
 | |
|                       "commentStart": 0,
 | |
|                       "end": 0,
 | |
|                       "moduleId": 0,
 | |
|                       "name": {
 | |
|                         "commentStart": 0,
 | |
|                         "end": 0,
 | |
|                         "moduleId": 0,
 | |
|                         "name": "legHeight",
 | |
|                         "start": 0,
 | |
|                         "type": "Identifier"
 | |
|                       },
 | |
|                       "path": [],
 | |
|                       "start": 0,
 | |
|                       "type": "Name",
 | |
|                       "type": "Name"
 | |
|                     },
 | |
|                     "commentStart": 0,
 | |
|                     "end": 0,
 | |
|                     "moduleId": 0,
 | |
|                     "operator": "-",
 | |
|                     "start": 0,
 | |
|                     "type": "UnaryExpression",
 | |
|                     "type": "UnaryExpression"
 | |
|                   },
 | |
|                   "moduleId": 0,
 | |
|                   "operator": "-",
 | |
|                   "right": {
 | |
|                     "commentStart": 0,
 | |
|                     "end": 0,
 | |
|                     "moduleId": 0,
 | |
|                     "raw": ".1",
 | |
|                     "start": 0,
 | |
|                     "type": "Literal",
 | |
|                     "type": "Literal",
 | |
|                     "value": {
 | |
|                       "value": 0.1,
 | |
|                       "suffix": "None"
 | |
|                     }
 | |
|                   },
 | |
|                   "start": 0,
 | |
|                   "type": "BinaryExpression",
 | |
|                   "type": "BinaryExpression"
 | |
|                 }
 | |
|               }
 | |
|             ],
 | |
|             "callee": {
 | |
|               "abs_path": false,
 | |
|               "commentStart": 0,
 | |
|               "end": 0,
 | |
|               "moduleId": 0,
 | |
|               "name": {
 | |
|                 "commentStart": 0,
 | |
|                 "end": 0,
 | |
|                 "moduleId": 0,
 | |
|                 "name": "extrude",
 | |
|                 "start": 0,
 | |
|                 "type": "Identifier"
 | |
|               },
 | |
|               "path": [],
 | |
|               "start": 0,
 | |
|               "type": "Name"
 | |
|             },
 | |
|             "commentStart": 0,
 | |
|             "end": 0,
 | |
|             "moduleId": 0,
 | |
|             "start": 0,
 | |
|             "type": "CallExpressionKw",
 | |
|             "type": "CallExpressionKw",
 | |
|             "unlabeled": {
 | |
|               "abs_path": false,
 | |
|               "commentStart": 0,
 | |
|               "end": 0,
 | |
|               "moduleId": 0,
 | |
|               "name": {
 | |
|                 "commentStart": 0,
 | |
|                 "end": 0,
 | |
|                 "moduleId": 0,
 | |
|                 "name": "legProfile002",
 | |
|                 "start": 0,
 | |
|                 "type": "Identifier"
 | |
|               },
 | |
|               "path": [],
 | |
|               "start": 0,
 | |
|               "type": "Name",
 | |
|               "type": "Name"
 | |
|             }
 | |
|           },
 | |
|           "moduleId": 0,
 | |
|           "start": 0,
 | |
|           "type": "VariableDeclarator"
 | |
|         },
 | |
|         "end": 0,
 | |
|         "kind": "const",
 | |
|         "moduleId": 0,
 | |
|         "start": 0,
 | |
|         "type": "VariableDeclaration",
 | |
|         "type": "VariableDeclaration"
 | |
|       },
 | |
|       {
 | |
|         "commentStart": 0,
 | |
|         "declaration": {
 | |
|           "commentStart": 0,
 | |
|           "end": 0,
 | |
|           "id": {
 | |
|             "commentStart": 0,
 | |
|             "end": 0,
 | |
|             "moduleId": 0,
 | |
|             "name": "fullFrame",
 | |
|             "start": 0,
 | |
|             "type": "Identifier"
 | |
|           },
 | |
|           "init": {
 | |
|             "body": [
 | |
|               {
 | |
|                 "commentStart": 0,
 | |
|                 "end": 0,
 | |
|                 "left": {
 | |
|                   "commentStart": 0,
 | |
|                   "end": 0,
 | |
|                   "left": {
 | |
|                     "abs_path": false,
 | |
|                     "commentStart": 0,
 | |
|                     "end": 0,
 | |
|                     "moduleId": 0,
 | |
|                     "name": {
 | |
|                       "commentStart": 0,
 | |
|                       "end": 0,
 | |
|                       "moduleId": 0,
 | |
|                       "name": "newFrame",
 | |
|                       "start": 0,
 | |
|                       "type": "Identifier"
 | |
|                     },
 | |
|                     "path": [],
 | |
|                     "start": 0,
 | |
|                     "type": "Name",
 | |
|                     "type": "Name"
 | |
|                   },
 | |
|                   "moduleId": 0,
 | |
|                   "operator": "+",
 | |
|                   "right": {
 | |
|                     "abs_path": false,
 | |
|                     "commentStart": 0,
 | |
|                     "end": 0,
 | |
|                     "moduleId": 0,
 | |
|                     "name": {
 | |
|                       "commentStart": 0,
 | |
|                       "end": 0,
 | |
|                       "moduleId": 0,
 | |
|                       "name": "leg001",
 | |
|                       "start": 0,
 | |
|                       "type": "Identifier"
 | |
|                     },
 | |
|                     "path": [],
 | |
|                     "start": 0,
 | |
|                     "type": "Name",
 | |
|                     "type": "Name"
 | |
|                   },
 | |
|                   "start": 0,
 | |
|                   "type": "BinaryExpression",
 | |
|                   "type": "BinaryExpression"
 | |
|                 },
 | |
|                 "moduleId": 0,
 | |
|                 "operator": "+",
 | |
|                 "right": {
 | |
|                   "abs_path": false,
 | |
|                   "commentStart": 0,
 | |
|                   "end": 0,
 | |
|                   "moduleId": 0,
 | |
|                   "name": {
 | |
|                     "commentStart": 0,
 | |
|                     "end": 0,
 | |
|                     "moduleId": 0,
 | |
|                     "name": "leg002",
 | |
|                     "start": 0,
 | |
|                     "type": "Identifier"
 | |
|                   },
 | |
|                   "path": [],
 | |
|                   "start": 0,
 | |
|                   "type": "Name",
 | |
|                   "type": "Name"
 | |
|                 },
 | |
|                 "start": 0,
 | |
|                 "type": "BinaryExpression",
 | |
|                 "type": "BinaryExpression"
 | |
|               },
 | |
|               {
 | |
|                 "arguments": [
 | |
|                   {
 | |
|                     "type": "LabeledArg",
 | |
|                     "label": {
 | |
|                       "commentStart": 0,
 | |
|                       "end": 0,
 | |
|                       "moduleId": 0,
 | |
|                       "name": "instances",
 | |
|                       "start": 0,
 | |
|                       "type": "Identifier"
 | |
|                     },
 | |
|                     "arg": {
 | |
|                       "abs_path": false,
 | |
|                       "commentStart": 0,
 | |
|                       "end": 0,
 | |
|                       "moduleId": 0,
 | |
|                       "name": {
 | |
|                         "commentStart": 0,
 | |
|                         "end": 0,
 | |
|                         "moduleId": 0,
 | |
|                         "name": "nFrames",
 | |
|                         "start": 0,
 | |
|                         "type": "Identifier"
 | |
|                       },
 | |
|                       "path": [],
 | |
|                       "start": 0,
 | |
|                       "type": "Name",
 | |
|                       "type": "Name"
 | |
|                     }
 | |
|                   },
 | |
|                   {
 | |
|                     "type": "LabeledArg",
 | |
|                     "label": {
 | |
|                       "commentStart": 0,
 | |
|                       "end": 0,
 | |
|                       "moduleId": 0,
 | |
|                       "name": "distance",
 | |
|                       "start": 0,
 | |
|                       "type": "Identifier"
 | |
|                     },
 | |
|                     "arg": {
 | |
|                       "commentStart": 0,
 | |
|                       "end": 0,
 | |
|                       "left": {
 | |
|                         "abs_path": false,
 | |
|                         "commentStart": 0,
 | |
|                         "end": 0,
 | |
|                         "moduleId": 0,
 | |
|                         "name": {
 | |
|                           "commentStart": 0,
 | |
|                           "end": 0,
 | |
|                           "moduleId": 0,
 | |
|                           "name": "crossBeamLength",
 | |
|                           "start": 0,
 | |
|                           "type": "Identifier"
 | |
|                         },
 | |
|                         "path": [],
 | |
|                         "start": 0,
 | |
|                         "type": "Name",
 | |
|                         "type": "Name"
 | |
|                       },
 | |
|                       "moduleId": 0,
 | |
|                       "operator": "+",
 | |
|                       "right": {
 | |
|                         "abs_path": false,
 | |
|                         "commentStart": 0,
 | |
|                         "end": 0,
 | |
|                         "moduleId": 0,
 | |
|                         "name": {
 | |
|                           "commentStart": 0,
 | |
|                           "end": 0,
 | |
|                           "moduleId": 0,
 | |
|                           "name": "beamLength",
 | |
|                           "start": 0,
 | |
|                           "type": "Identifier"
 | |
|                         },
 | |
|                         "path": [],
 | |
|                         "start": 0,
 | |
|                         "type": "Name",
 | |
|                         "type": "Name"
 | |
|                       },
 | |
|                       "start": 0,
 | |
|                       "type": "BinaryExpression",
 | |
|                       "type": "BinaryExpression"
 | |
|                     }
 | |
|                   },
 | |
|                   {
 | |
|                     "type": "LabeledArg",
 | |
|                     "label": {
 | |
|                       "commentStart": 0,
 | |
|                       "end": 0,
 | |
|                       "moduleId": 0,
 | |
|                       "name": "axis",
 | |
|                       "start": 0,
 | |
|                       "type": "Identifier"
 | |
|                     },
 | |
|                     "arg": {
 | |
|                       "commentStart": 0,
 | |
|                       "elements": [
 | |
|                         {
 | |
|                           "argument": {
 | |
|                             "commentStart": 0,
 | |
|                             "end": 0,
 | |
|                             "moduleId": 0,
 | |
|                             "raw": "1",
 | |
|                             "start": 0,
 | |
|                             "type": "Literal",
 | |
|                             "type": "Literal",
 | |
|                             "value": {
 | |
|                               "value": 1.0,
 | |
|                               "suffix": "None"
 | |
|                             }
 | |
|                           },
 | |
|                           "commentStart": 0,
 | |
|                           "end": 0,
 | |
|                           "moduleId": 0,
 | |
|                           "operator": "-",
 | |
|                           "start": 0,
 | |
|                           "type": "UnaryExpression",
 | |
|                           "type": "UnaryExpression"
 | |
|                         },
 | |
|                         {
 | |
|                           "commentStart": 0,
 | |
|                           "end": 0,
 | |
|                           "moduleId": 0,
 | |
|                           "raw": "0",
 | |
|                           "start": 0,
 | |
|                           "type": "Literal",
 | |
|                           "type": "Literal",
 | |
|                           "value": {
 | |
|                             "value": 0.0,
 | |
|                             "suffix": "None"
 | |
|                           }
 | |
|                         },
 | |
|                         {
 | |
|                           "commentStart": 0,
 | |
|                           "end": 0,
 | |
|                           "moduleId": 0,
 | |
|                           "raw": "0",
 | |
|                           "start": 0,
 | |
|                           "type": "Literal",
 | |
|                           "type": "Literal",
 | |
|                           "value": {
 | |
|                             "value": 0.0,
 | |
|                             "suffix": "None"
 | |
|                           }
 | |
|                         }
 | |
|                       ],
 | |
|                       "end": 0,
 | |
|                       "moduleId": 0,
 | |
|                       "start": 0,
 | |
|                       "type": "ArrayExpression",
 | |
|                       "type": "ArrayExpression"
 | |
|                     }
 | |
|                   }
 | |
|                 ],
 | |
|                 "callee": {
 | |
|                   "abs_path": false,
 | |
|                   "commentStart": 0,
 | |
|                   "end": 0,
 | |
|                   "moduleId": 0,
 | |
|                   "name": {
 | |
|                     "commentStart": 0,
 | |
|                     "end": 0,
 | |
|                     "moduleId": 0,
 | |
|                     "name": "patternLinear3d",
 | |
|                     "start": 0,
 | |
|                     "type": "Identifier"
 | |
|                   },
 | |
|                   "path": [],
 | |
|                   "start": 0,
 | |
|                   "type": "Name"
 | |
|                 },
 | |
|                 "commentStart": 0,
 | |
|                 "end": 0,
 | |
|                 "moduleId": 0,
 | |
|                 "start": 0,
 | |
|                 "type": "CallExpressionKw",
 | |
|                 "type": "CallExpressionKw",
 | |
|                 "unlabeled": {
 | |
|                   "commentStart": 0,
 | |
|                   "end": 0,
 | |
|                   "moduleId": 0,
 | |
|                   "start": 0,
 | |
|                   "type": "PipeSubstitution",
 | |
|                   "type": "PipeSubstitution"
 | |
|                 }
 | |
|               }
 | |
|             ],
 | |
|             "commentStart": 0,
 | |
|             "end": 0,
 | |
|             "moduleId": 0,
 | |
|             "nonCodeMeta": {
 | |
|               "nonCodeNodes": {
 | |
|                 "1": [
 | |
|                   {
 | |
|                     "commentStart": 0,
 | |
|                     "end": 0,
 | |
|                     "moduleId": 0,
 | |
|                     "start": 0,
 | |
|                     "type": "NonCodeNode",
 | |
|                     "value": {
 | |
|                       "type": "newLineBlockComment",
 | |
|                       "value": "Create the center cross beam",
 | |
|                       "style": "line"
 | |
|                     }
 | |
|                   }
 | |
|                 ]
 | |
|               },
 | |
|               "startNodes": []
 | |
|             },
 | |
|             "start": 0,
 | |
|             "type": "PipeExpression",
 | |
|             "type": "PipeExpression"
 | |
|           },
 | |
|           "moduleId": 0,
 | |
|           "start": 0,
 | |
|           "type": "VariableDeclarator"
 | |
|         },
 | |
|         "end": 0,
 | |
|         "kind": "const",
 | |
|         "moduleId": 0,
 | |
|         "preComments": [
 | |
|           "",
 | |
|           "",
 | |
|           "// Combine the top frame with the legs and pattern"
 | |
|         ],
 | |
|         "start": 0,
 | |
|         "type": "VariableDeclaration",
 | |
|         "type": "VariableDeclaration"
 | |
|       },
 | |
|       {
 | |
|         "commentStart": 0,
 | |
|         "declaration": {
 | |
|           "commentStart": 0,
 | |
|           "end": 0,
 | |
|           "id": {
 | |
|             "commentStart": 0,
 | |
|             "end": 0,
 | |
|             "moduleId": 0,
 | |
|             "name": "centerCrossBeamSketch",
 | |
|             "start": 0,
 | |
|             "type": "Identifier"
 | |
|           },
 | |
|           "init": {
 | |
|             "arguments": [],
 | |
|             "callee": {
 | |
|               "abs_path": false,
 | |
|               "commentStart": 0,
 | |
|               "end": 0,
 | |
|               "moduleId": 0,
 | |
|               "name": {
 | |
|                 "commentStart": 0,
 | |
|                 "end": 0,
 | |
|                 "moduleId": 0,
 | |
|                 "name": "startSketchOn",
 | |
|                 "start": 0,
 | |
|                 "type": "Identifier"
 | |
|               },
 | |
|               "path": [],
 | |
|               "start": 0,
 | |
|               "type": "Name"
 | |
|             },
 | |
|             "commentStart": 0,
 | |
|             "end": 0,
 | |
|             "moduleId": 0,
 | |
|             "start": 0,
 | |
|             "type": "CallExpressionKw",
 | |
|             "type": "CallExpressionKw",
 | |
|             "unlabeled": {
 | |
|               "abs_path": false,
 | |
|               "commentStart": 0,
 | |
|               "end": 0,
 | |
|               "moduleId": 0,
 | |
|               "name": {
 | |
|                 "commentStart": 0,
 | |
|                 "end": 0,
 | |
|                 "moduleId": 0,
 | |
|                 "name": "YZ",
 | |
|                 "start": 0,
 | |
|                 "type": "Identifier"
 | |
|               },
 | |
|               "path": [],
 | |
|               "start": 0,
 | |
|               "type": "Name",
 | |
|               "type": "Name"
 | |
|             }
 | |
|           },
 | |
|           "moduleId": 0,
 | |
|           "start": 0,
 | |
|           "type": "VariableDeclarator"
 | |
|         },
 | |
|         "end": 0,
 | |
|         "kind": "const",
 | |
|         "moduleId": 0,
 | |
|         "start": 0,
 | |
|         "type": "VariableDeclaration",
 | |
|         "type": "VariableDeclaration"
 | |
|       },
 | |
|       {
 | |
|         "commentStart": 0,
 | |
|         "declaration": {
 | |
|           "commentStart": 0,
 | |
|           "end": 0,
 | |
|           "id": {
 | |
|             "commentStart": 0,
 | |
|             "end": 0,
 | |
|             "moduleId": 0,
 | |
|             "name": "profile005",
 | |
|             "start": 0,
 | |
|             "type": "Identifier"
 | |
|           },
 | |
|           "init": {
 | |
|             "body": [
 | |
|               {
 | |
|                 "arguments": [
 | |
|                   {
 | |
|                     "type": "LabeledArg",
 | |
|                     "label": {
 | |
|                       "commentStart": 0,
 | |
|                       "end": 0,
 | |
|                       "moduleId": 0,
 | |
|                       "name": "at",
 | |
|                       "start": 0,
 | |
|                       "type": "Identifier"
 | |
|                     },
 | |
|                     "arg": {
 | |
|                       "commentStart": 0,
 | |
|                       "elements": [
 | |
|                         {
 | |
|                           "commentStart": 0,
 | |
|                           "end": 0,
 | |
|                           "moduleId": 0,
 | |
|                           "raw": "0",
 | |
|                           "start": 0,
 | |
|                           "type": "Literal",
 | |
|                           "type": "Literal",
 | |
|                           "value": {
 | |
|                             "value": 0.0,
 | |
|                             "suffix": "None"
 | |
|                           }
 | |
|                         },
 | |
|                         {
 | |
|                           "commentStart": 0,
 | |
|                           "end": 0,
 | |
|                           "left": {
 | |
|                             "arguments": [],
 | |
|                             "callee": {
 | |
|                               "abs_path": false,
 | |
|                               "commentStart": 0,
 | |
|                               "end": 0,
 | |
|                               "moduleId": 0,
 | |
|                               "name": {
 | |
|                                 "commentStart": 0,
 | |
|                                 "end": 0,
 | |
|                                 "moduleId": 0,
 | |
|                                 "name": "segEndY",
 | |
|                                 "start": 0,
 | |
|                                 "type": "Identifier"
 | |
|                               },
 | |
|                               "path": [],
 | |
|                               "start": 0,
 | |
|                               "type": "Name"
 | |
|                             },
 | |
|                             "commentStart": 0,
 | |
|                             "end": 0,
 | |
|                             "moduleId": 0,
 | |
|                             "start": 0,
 | |
|                             "type": "CallExpressionKw",
 | |
|                             "type": "CallExpressionKw",
 | |
|                             "unlabeled": {
 | |
|                               "abs_path": false,
 | |
|                               "commentStart": 0,
 | |
|                               "end": 0,
 | |
|                               "moduleId": 0,
 | |
|                               "name": {
 | |
|                                 "commentStart": 0,
 | |
|                                 "end": 0,
 | |
|                                 "moduleId": 0,
 | |
|                                 "name": "tag001",
 | |
|                                 "start": 0,
 | |
|                                 "type": "Identifier"
 | |
|                               },
 | |
|                               "path": [],
 | |
|                               "start": 0,
 | |
|                               "type": "Name",
 | |
|                               "type": "Name"
 | |
|                             }
 | |
|                           },
 | |
|                           "moduleId": 0,
 | |
|                           "operator": "-",
 | |
|                           "right": {
 | |
|                             "commentStart": 0,
 | |
|                             "end": 0,
 | |
|                             "moduleId": 0,
 | |
|                             "raw": "1",
 | |
|                             "start": 0,
 | |
|                             "type": "Literal",
 | |
|                             "type": "Literal",
 | |
|                             "value": {
 | |
|                               "value": 1.0,
 | |
|                               "suffix": "None"
 | |
|                             }
 | |
|                           },
 | |
|                           "start": 0,
 | |
|                           "type": "BinaryExpression",
 | |
|                           "type": "BinaryExpression"
 | |
|                         }
 | |
|                       ],
 | |
|                       "end": 0,
 | |
|                       "moduleId": 0,
 | |
|                       "start": 0,
 | |
|                       "type": "ArrayExpression",
 | |
|                       "type": "ArrayExpression"
 | |
|                     }
 | |
|                   }
 | |
|                 ],
 | |
|                 "callee": {
 | |
|                   "abs_path": false,
 | |
|                   "commentStart": 0,
 | |
|                   "end": 0,
 | |
|                   "moduleId": 0,
 | |
|                   "name": {
 | |
|                     "commentStart": 0,
 | |
|                     "end": 0,
 | |
|                     "moduleId": 0,
 | |
|                     "name": "startProfile",
 | |
|                     "start": 0,
 | |
|                     "type": "Identifier"
 | |
|                   },
 | |
|                   "path": [],
 | |
|                   "start": 0,
 | |
|                   "type": "Name"
 | |
|                 },
 | |
|                 "commentStart": 0,
 | |
|                 "end": 0,
 | |
|                 "moduleId": 0,
 | |
|                 "start": 0,
 | |
|                 "type": "CallExpressionKw",
 | |
|                 "type": "CallExpressionKw",
 | |
|                 "unlabeled": {
 | |
|                   "abs_path": false,
 | |
|                   "commentStart": 0,
 | |
|                   "end": 0,
 | |
|                   "moduleId": 0,
 | |
|                   "name": {
 | |
|                     "commentStart": 0,
 | |
|                     "end": 0,
 | |
|                     "moduleId": 0,
 | |
|                     "name": "centerCrossBeamSketch",
 | |
|                     "start": 0,
 | |
|                     "type": "Identifier"
 | |
|                   },
 | |
|                   "path": [],
 | |
|                   "start": 0,
 | |
|                   "type": "Name",
 | |
|                   "type": "Name"
 | |
|                 }
 | |
|               },
 | |
|               {
 | |
|                 "arguments": [
 | |
|                   {
 | |
|                     "type": "LabeledArg",
 | |
|                     "label": {
 | |
|                       "commentStart": 0,
 | |
|                       "end": 0,
 | |
|                       "moduleId": 0,
 | |
|                       "name": "angle",
 | |
|                       "start": 0,
 | |
|                       "type": "Identifier"
 | |
|                     },
 | |
|                     "arg": {
 | |
|                       "argument": {
 | |
|                         "abs_path": false,
 | |
|                         "commentStart": 0,
 | |
|                         "end": 0,
 | |
|                         "moduleId": 0,
 | |
|                         "name": {
 | |
|                           "commentStart": 0,
 | |
|                           "end": 0,
 | |
|                           "moduleId": 0,
 | |
|                           "name": "topTrussAngle",
 | |
|                           "start": 0,
 | |
|                           "type": "Identifier"
 | |
|                         },
 | |
|                         "path": [],
 | |
|                         "start": 0,
 | |
|                         "type": "Name",
 | |
|                         "type": "Name"
 | |
|                       },
 | |
|                       "commentStart": 0,
 | |
|                       "end": 0,
 | |
|                       "moduleId": 0,
 | |
|                       "operator": "-",
 | |
|                       "start": 0,
 | |
|                       "type": "UnaryExpression",
 | |
|                       "type": "UnaryExpression"
 | |
|                     }
 | |
|                   },
 | |
|                   {
 | |
|                     "type": "LabeledArg",
 | |
|                     "label": {
 | |
|                       "commentStart": 0,
 | |
|                       "end": 0,
 | |
|                       "moduleId": 0,
 | |
|                       "name": "length",
 | |
|                       "start": 0,
 | |
|                       "type": "Identifier"
 | |
|                     },
 | |
|                     "arg": {
 | |
|                       "commentStart": 0,
 | |
|                       "end": 0,
 | |
|                       "left": {
 | |
|                         "commentStart": 0,
 | |
|                         "end": 0,
 | |
|                         "left": {
 | |
|                           "abs_path": false,
 | |
|                           "commentStart": 0,
 | |
|                           "end": 0,
 | |
|                           "moduleId": 0,
 | |
|                           "name": {
 | |
|                             "commentStart": 0,
 | |
|                             "end": 0,
 | |
|                             "moduleId": 0,
 | |
|                             "name": "beamWidth",
 | |
|                             "start": 0,
 | |
|                             "type": "Identifier"
 | |
|                           },
 | |
|                           "path": [],
 | |
|                           "start": 0,
 | |
|                           "type": "Name",
 | |
|                           "type": "Name"
 | |
|                         },
 | |
|                         "moduleId": 0,
 | |
|                         "operator": "*",
 | |
|                         "right": {
 | |
|                           "commentStart": 0,
 | |
|                           "end": 0,
 | |
|                           "moduleId": 0,
 | |
|                           "raw": "3",
 | |
|                           "start": 0,
 | |
|                           "type": "Literal",
 | |
|                           "type": "Literal",
 | |
|                           "value": {
 | |
|                             "value": 3.0,
 | |
|                             "suffix": "None"
 | |
|                           }
 | |
|                         },
 | |
|                         "start": 0,
 | |
|                         "type": "BinaryExpression",
 | |
|                         "type": "BinaryExpression"
 | |
|                       },
 | |
|                       "moduleId": 0,
 | |
|                       "operator": "/",
 | |
|                       "right": {
 | |
|                         "commentStart": 0,
 | |
|                         "end": 0,
 | |
|                         "moduleId": 0,
 | |
|                         "raw": "8",
 | |
|                         "start": 0,
 | |
|                         "type": "Literal",
 | |
|                         "type": "Literal",
 | |
|                         "value": {
 | |
|                           "value": 8.0,
 | |
|                           "suffix": "None"
 | |
|                         }
 | |
|                       },
 | |
|                       "start": 0,
 | |
|                       "type": "BinaryExpression",
 | |
|                       "type": "BinaryExpression"
 | |
|                     }
 | |
|                   }
 | |
|                 ],
 | |
|                 "callee": {
 | |
|                   "abs_path": false,
 | |
|                   "commentStart": 0,
 | |
|                   "end": 0,
 | |
|                   "moduleId": 0,
 | |
|                   "name": {
 | |
|                     "commentStart": 0,
 | |
|                     "end": 0,
 | |
|                     "moduleId": 0,
 | |
|                     "name": "angledLine",
 | |
|                     "start": 0,
 | |
|                     "type": "Identifier"
 | |
|                   },
 | |
|                   "path": [],
 | |
|                   "start": 0,
 | |
|                   "type": "Name"
 | |
|                 },
 | |
|                 "commentStart": 0,
 | |
|                 "end": 0,
 | |
|                 "moduleId": 0,
 | |
|                 "start": 0,
 | |
|                 "type": "CallExpressionKw",
 | |
|                 "type": "CallExpressionKw",
 | |
|                 "unlabeled": {
 | |
|                   "commentStart": 0,
 | |
|                   "end": 0,
 | |
|                   "moduleId": 0,
 | |
|                   "start": 0,
 | |
|                   "type": "PipeSubstitution",
 | |
|                   "type": "PipeSubstitution"
 | |
|                 }
 | |
|               },
 | |
|               {
 | |
|                 "arguments": [
 | |
|                   {
 | |
|                     "type": "LabeledArg",
 | |
|                     "label": {
 | |
|                       "commentStart": 0,
 | |
|                       "end": 0,
 | |
|                       "moduleId": 0,
 | |
|                       "name": "length",
 | |
|                       "start": 0,
 | |
|                       "type": "Identifier"
 | |
|                     },
 | |
|                     "arg": {
 | |
|                       "commentStart": 0,
 | |
|                       "end": 0,
 | |
|                       "left": {
 | |
|                         "commentStart": 0,
 | |
|                         "end": 0,
 | |
|                         "left": {
 | |
|                           "argument": {
 | |
|                             "abs_path": false,
 | |
|                             "commentStart": 0,
 | |
|                             "end": 0,
 | |
|                             "moduleId": 0,
 | |
|                             "name": {
 | |
|                               "commentStart": 0,
 | |
|                               "end": 0,
 | |
|                               "moduleId": 0,
 | |
|                               "name": "beamWidth",
 | |
|                               "start": 0,
 | |
|                               "type": "Identifier"
 | |
|                             },
 | |
|                             "path": [],
 | |
|                             "start": 0,
 | |
|                             "type": "Name",
 | |
|                             "type": "Name"
 | |
|                           },
 | |
|                           "commentStart": 0,
 | |
|                           "end": 0,
 | |
|                           "moduleId": 0,
 | |
|                           "operator": "-",
 | |
|                           "start": 0,
 | |
|                           "type": "UnaryExpression",
 | |
|                           "type": "UnaryExpression"
 | |
|                         },
 | |
|                         "moduleId": 0,
 | |
|                         "operator": "*",
 | |
|                         "right": {
 | |
|                           "commentStart": 0,
 | |
|                           "end": 0,
 | |
|                           "moduleId": 0,
 | |
|                           "raw": "3",
 | |
|                           "start": 0,
 | |
|                           "type": "Literal",
 | |
|                           "type": "Literal",
 | |
|                           "value": {
 | |
|                             "value": 3.0,
 | |
|                             "suffix": "None"
 | |
|                           }
 | |
|                         },
 | |
|                         "start": 0,
 | |
|                         "type": "BinaryExpression",
 | |
|                         "type": "BinaryExpression"
 | |
|                       },
 | |
|                       "moduleId": 0,
 | |
|                       "operator": "/",
 | |
|                       "right": {
 | |
|                         "commentStart": 0,
 | |
|                         "end": 0,
 | |
|                         "moduleId": 0,
 | |
|                         "raw": "8",
 | |
|                         "start": 0,
 | |
|                         "type": "Literal",
 | |
|                         "type": "Literal",
 | |
|                         "value": {
 | |
|                           "value": 8.0,
 | |
|                           "suffix": "None"
 | |
|                         }
 | |
|                       },
 | |
|                       "start": 0,
 | |
|                       "type": "BinaryExpression",
 | |
|                       "type": "BinaryExpression"
 | |
|                     }
 | |
|                   }
 | |
|                 ],
 | |
|                 "callee": {
 | |
|                   "abs_path": false,
 | |
|                   "commentStart": 0,
 | |
|                   "end": 0,
 | |
|                   "moduleId": 0,
 | |
|                   "name": {
 | |
|                     "commentStart": 0,
 | |
|                     "end": 0,
 | |
|                     "moduleId": 0,
 | |
|                     "name": "yLine",
 | |
|                     "start": 0,
 | |
|                     "type": "Identifier"
 | |
|                   },
 | |
|                   "path": [],
 | |
|                   "start": 0,
 | |
|                   "type": "Name"
 | |
|                 },
 | |
|                 "commentStart": 0,
 | |
|                 "end": 0,
 | |
|                 "moduleId": 0,
 | |
|                 "start": 0,
 | |
|                 "type": "CallExpressionKw",
 | |
|                 "type": "CallExpressionKw",
 | |
|                 "unlabeled": null
 | |
|               },
 | |
|               {
 | |
|                 "arguments": [
 | |
|                   {
 | |
|                     "type": "LabeledArg",
 | |
|                     "label": {
 | |
|                       "commentStart": 0,
 | |
|                       "end": 0,
 | |
|                       "moduleId": 0,
 | |
|                       "name": "angle",
 | |
|                       "start": 0,
 | |
|                       "type": "Identifier"
 | |
|                     },
 | |
|                     "arg": {
 | |
|                       "commentStart": 0,
 | |
|                       "end": 0,
 | |
|                       "left": {
 | |
|                         "commentStart": 0,
 | |
|                         "end": 0,
 | |
|                         "moduleId": 0,
 | |
|                         "raw": "180",
 | |
|                         "start": 0,
 | |
|                         "type": "Literal",
 | |
|                         "type": "Literal",
 | |
|                         "value": {
 | |
|                           "value": 180.0,
 | |
|                           "suffix": "None"
 | |
|                         }
 | |
|                       },
 | |
|                       "moduleId": 0,
 | |
|                       "operator": "-",
 | |
|                       "right": {
 | |
|                         "abs_path": false,
 | |
|                         "commentStart": 0,
 | |
|                         "end": 0,
 | |
|                         "moduleId": 0,
 | |
|                         "name": {
 | |
|                           "commentStart": 0,
 | |
|                           "end": 0,
 | |
|                           "moduleId": 0,
 | |
|                           "name": "topTrussAngle",
 | |
|                           "start": 0,
 | |
|                           "type": "Identifier"
 | |
|                         },
 | |
|                         "path": [],
 | |
|                         "start": 0,
 | |
|                         "type": "Name",
 | |
|                         "type": "Name"
 | |
|                       },
 | |
|                       "start": 0,
 | |
|                       "type": "BinaryExpression",
 | |
|                       "type": "BinaryExpression"
 | |
|                     }
 | |
|                   },
 | |
|                   {
 | |
|                     "type": "LabeledArg",
 | |
|                     "label": {
 | |
|                       "commentStart": 0,
 | |
|                       "end": 0,
 | |
|                       "moduleId": 0,
 | |
|                       "name": "length",
 | |
|                       "start": 0,
 | |
|                       "type": "Identifier"
 | |
|                     },
 | |
|                     "arg": {
 | |
|                       "commentStart": 0,
 | |
|                       "end": 0,
 | |
|                       "left": {
 | |
|                         "commentStart": 0,
 | |
|                         "end": 0,
 | |
|                         "left": {
 | |
|                           "abs_path": false,
 | |
|                           "commentStart": 0,
 | |
|                           "end": 0,
 | |
|                           "moduleId": 0,
 | |
|                           "name": {
 | |
|                             "commentStart": 0,
 | |
|                             "end": 0,
 | |
|                             "moduleId": 0,
 | |
|                             "name": "beamWidth",
 | |
|                             "start": 0,
 | |
|                             "type": "Identifier"
 | |
|                           },
 | |
|                           "path": [],
 | |
|                           "start": 0,
 | |
|                           "type": "Name",
 | |
|                           "type": "Name"
 | |
|                         },
 | |
|                         "moduleId": 0,
 | |
|                         "operator": "*",
 | |
|                         "right": {
 | |
|                           "commentStart": 0,
 | |
|                           "end": 0,
 | |
|                           "moduleId": 0,
 | |
|                           "raw": "3",
 | |
|                           "start": 0,
 | |
|                           "type": "Literal",
 | |
|                           "type": "Literal",
 | |
|                           "value": {
 | |
|                             "value": 3.0,
 | |
|                             "suffix": "None"
 | |
|                           }
 | |
|                         },
 | |
|                         "start": 0,
 | |
|                         "type": "BinaryExpression",
 | |
|                         "type": "BinaryExpression"
 | |
|                       },
 | |
|                       "moduleId": 0,
 | |
|                       "operator": "/",
 | |
|                       "right": {
 | |
|                         "commentStart": 0,
 | |
|                         "end": 0,
 | |
|                         "moduleId": 0,
 | |
|                         "raw": "8",
 | |
|                         "start": 0,
 | |
|                         "type": "Literal",
 | |
|                         "type": "Literal",
 | |
|                         "value": {
 | |
|                           "value": 8.0,
 | |
|                           "suffix": "None"
 | |
|                         }
 | |
|                       },
 | |
|                       "start": 0,
 | |
|                       "type": "BinaryExpression",
 | |
|                       "type": "BinaryExpression"
 | |
|                     }
 | |
|                   }
 | |
|                 ],
 | |
|                 "callee": {
 | |
|                   "abs_path": false,
 | |
|                   "commentStart": 0,
 | |
|                   "end": 0,
 | |
|                   "moduleId": 0,
 | |
|                   "name": {
 | |
|                     "commentStart": 0,
 | |
|                     "end": 0,
 | |
|                     "moduleId": 0,
 | |
|                     "name": "angledLine",
 | |
|                     "start": 0,
 | |
|                     "type": "Identifier"
 | |
|                   },
 | |
|                   "path": [],
 | |
|                   "start": 0,
 | |
|                   "type": "Name"
 | |
|                 },
 | |
|                 "commentStart": 0,
 | |
|                 "end": 0,
 | |
|                 "moduleId": 0,
 | |
|                 "start": 0,
 | |
|                 "type": "CallExpressionKw",
 | |
|                 "type": "CallExpressionKw",
 | |
|                 "unlabeled": {
 | |
|                   "commentStart": 0,
 | |
|                   "end": 0,
 | |
|                   "moduleId": 0,
 | |
|                   "start": 0,
 | |
|                   "type": "PipeSubstitution",
 | |
|                   "type": "PipeSubstitution"
 | |
|                 }
 | |
|               },
 | |
|               {
 | |
|                 "arguments": [
 | |
|                   {
 | |
|                     "type": "LabeledArg",
 | |
|                     "label": {
 | |
|                       "commentStart": 0,
 | |
|                       "end": 0,
 | |
|                       "moduleId": 0,
 | |
|                       "name": "angle",
 | |
|                       "start": 0,
 | |
|                       "type": "Identifier"
 | |
|                     },
 | |
|                     "arg": {
 | |
|                       "commentStart": 0,
 | |
|                       "end": 0,
 | |
|                       "left": {
 | |
|                         "commentStart": 0,
 | |
|                         "end": 0,
 | |
|                         "moduleId": 0,
 | |
|                         "raw": "180",
 | |
|                         "start": 0,
 | |
|                         "type": "Literal",
 | |
|                         "type": "Literal",
 | |
|                         "value": {
 | |
|                           "value": 180.0,
 | |
|                           "suffix": "None"
 | |
|                         }
 | |
|                       },
 | |
|                       "moduleId": 0,
 | |
|                       "operator": "+",
 | |
|                       "right": {
 | |
|                         "abs_path": false,
 | |
|                         "commentStart": 0,
 | |
|                         "end": 0,
 | |
|                         "moduleId": 0,
 | |
|                         "name": {
 | |
|                           "commentStart": 0,
 | |
|                           "end": 0,
 | |
|                           "moduleId": 0,
 | |
|                           "name": "topTrussAngle",
 | |
|                           "start": 0,
 | |
|                           "type": "Identifier"
 | |
|                         },
 | |
|                         "path": [],
 | |
|                         "start": 0,
 | |
|                         "type": "Name",
 | |
|                         "type": "Name"
 | |
|                       },
 | |
|                       "start": 0,
 | |
|                       "type": "BinaryExpression",
 | |
|                       "type": "BinaryExpression"
 | |
|                     }
 | |
|                   },
 | |
|                   {
 | |
|                     "type": "LabeledArg",
 | |
|                     "label": {
 | |
|                       "commentStart": 0,
 | |
|                       "end": 0,
 | |
|                       "moduleId": 0,
 | |
|                       "name": "length",
 | |
|                       "start": 0,
 | |
|                       "type": "Identifier"
 | |
|                     },
 | |
|                     "arg": {
 | |
|                       "commentStart": 0,
 | |
|                       "end": 0,
 | |
|                       "left": {
 | |
|                         "commentStart": 0,
 | |
|                         "end": 0,
 | |
|                         "left": {
 | |
|                           "abs_path": false,
 | |
|                           "commentStart": 0,
 | |
|                           "end": 0,
 | |
|                           "moduleId": 0,
 | |
|                           "name": {
 | |
|                             "commentStart": 0,
 | |
|                             "end": 0,
 | |
|                             "moduleId": 0,
 | |
|                             "name": "beamWidth",
 | |
|                             "start": 0,
 | |
|                             "type": "Identifier"
 | |
|                           },
 | |
|                           "path": [],
 | |
|                           "start": 0,
 | |
|                           "type": "Name",
 | |
|                           "type": "Name"
 | |
|                         },
 | |
|                         "moduleId": 0,
 | |
|                         "operator": "*",
 | |
|                         "right": {
 | |
|                           "commentStart": 0,
 | |
|                           "end": 0,
 | |
|                           "moduleId": 0,
 | |
|                           "raw": "3",
 | |
|                           "start": 0,
 | |
|                           "type": "Literal",
 | |
|                           "type": "Literal",
 | |
|                           "value": {
 | |
|                             "value": 3.0,
 | |
|                             "suffix": "None"
 | |
|                           }
 | |
|                         },
 | |
|                         "start": 0,
 | |
|                         "type": "BinaryExpression",
 | |
|                         "type": "BinaryExpression"
 | |
|                       },
 | |
|                       "moduleId": 0,
 | |
|                       "operator": "/",
 | |
|                       "right": {
 | |
|                         "commentStart": 0,
 | |
|                         "end": 0,
 | |
|                         "moduleId": 0,
 | |
|                         "raw": "8",
 | |
|                         "start": 0,
 | |
|                         "type": "Literal",
 | |
|                         "type": "Literal",
 | |
|                         "value": {
 | |
|                           "value": 8.0,
 | |
|                           "suffix": "None"
 | |
|                         }
 | |
|                       },
 | |
|                       "start": 0,
 | |
|                       "type": "BinaryExpression",
 | |
|                       "type": "BinaryExpression"
 | |
|                     }
 | |
|                   }
 | |
|                 ],
 | |
|                 "callee": {
 | |
|                   "abs_path": false,
 | |
|                   "commentStart": 0,
 | |
|                   "end": 0,
 | |
|                   "moduleId": 0,
 | |
|                   "name": {
 | |
|                     "commentStart": 0,
 | |
|                     "end": 0,
 | |
|                     "moduleId": 0,
 | |
|                     "name": "angledLine",
 | |
|                     "start": 0,
 | |
|                     "type": "Identifier"
 | |
|                   },
 | |
|                   "path": [],
 | |
|                   "start": 0,
 | |
|                   "type": "Name"
 | |
|                 },
 | |
|                 "commentStart": 0,
 | |
|                 "end": 0,
 | |
|                 "moduleId": 0,
 | |
|                 "start": 0,
 | |
|                 "type": "CallExpressionKw",
 | |
|                 "type": "CallExpressionKw",
 | |
|                 "unlabeled": {
 | |
|                   "commentStart": 0,
 | |
|                   "end": 0,
 | |
|                   "moduleId": 0,
 | |
|                   "start": 0,
 | |
|                   "type": "PipeSubstitution",
 | |
|                   "type": "PipeSubstitution"
 | |
|                 }
 | |
|               },
 | |
|               {
 | |
|                 "arguments": [
 | |
|                   {
 | |
|                     "type": "LabeledArg",
 | |
|                     "label": {
 | |
|                       "commentStart": 0,
 | |
|                       "end": 0,
 | |
|                       "moduleId": 0,
 | |
|                       "name": "length",
 | |
|                       "start": 0,
 | |
|                       "type": "Identifier"
 | |
|                     },
 | |
|                     "arg": {
 | |
|                       "commentStart": 0,
 | |
|                       "end": 0,
 | |
|                       "left": {
 | |
|                         "commentStart": 0,
 | |
|                         "end": 0,
 | |
|                         "left": {
 | |
|                           "abs_path": false,
 | |
|                           "commentStart": 0,
 | |
|                           "end": 0,
 | |
|                           "moduleId": 0,
 | |
|                           "name": {
 | |
|                             "commentStart": 0,
 | |
|                             "end": 0,
 | |
|                             "moduleId": 0,
 | |
|                             "name": "beamWidth",
 | |
|                             "start": 0,
 | |
|                             "type": "Identifier"
 | |
|                           },
 | |
|                           "path": [],
 | |
|                           "start": 0,
 | |
|                           "type": "Name",
 | |
|                           "type": "Name"
 | |
|                         },
 | |
|                         "moduleId": 0,
 | |
|                         "operator": "*",
 | |
|                         "right": {
 | |
|                           "commentStart": 0,
 | |
|                           "end": 0,
 | |
|                           "moduleId": 0,
 | |
|                           "raw": "3",
 | |
|                           "start": 0,
 | |
|                           "type": "Literal",
 | |
|                           "type": "Literal",
 | |
|                           "value": {
 | |
|                             "value": 3.0,
 | |
|                             "suffix": "None"
 | |
|                           }
 | |
|                         },
 | |
|                         "start": 0,
 | |
|                         "type": "BinaryExpression",
 | |
|                         "type": "BinaryExpression"
 | |
|                       },
 | |
|                       "moduleId": 0,
 | |
|                       "operator": "/",
 | |
|                       "right": {
 | |
|                         "commentStart": 0,
 | |
|                         "end": 0,
 | |
|                         "moduleId": 0,
 | |
|                         "raw": "8",
 | |
|                         "start": 0,
 | |
|                         "type": "Literal",
 | |
|                         "type": "Literal",
 | |
|                         "value": {
 | |
|                           "value": 8.0,
 | |
|                           "suffix": "None"
 | |
|                         }
 | |
|                       },
 | |
|                       "start": 0,
 | |
|                       "type": "BinaryExpression",
 | |
|                       "type": "BinaryExpression"
 | |
|                     }
 | |
|                   }
 | |
|                 ],
 | |
|                 "callee": {
 | |
|                   "abs_path": false,
 | |
|                   "commentStart": 0,
 | |
|                   "end": 0,
 | |
|                   "moduleId": 0,
 | |
|                   "name": {
 | |
|                     "commentStart": 0,
 | |
|                     "end": 0,
 | |
|                     "moduleId": 0,
 | |
|                     "name": "yLine",
 | |
|                     "start": 0,
 | |
|                     "type": "Identifier"
 | |
|                   },
 | |
|                   "path": [],
 | |
|                   "start": 0,
 | |
|                   "type": "Name"
 | |
|                 },
 | |
|                 "commentStart": 0,
 | |
|                 "end": 0,
 | |
|                 "moduleId": 0,
 | |
|                 "start": 0,
 | |
|                 "type": "CallExpressionKw",
 | |
|                 "type": "CallExpressionKw",
 | |
|                 "unlabeled": null
 | |
|               },
 | |
|               {
 | |
|                 "arguments": [
 | |
|                   {
 | |
|                     "type": "LabeledArg",
 | |
|                     "label": {
 | |
|                       "commentStart": 0,
 | |
|                       "end": 0,
 | |
|                       "moduleId": 0,
 | |
|                       "name": "endAbsolute",
 | |
|                       "start": 0,
 | |
|                       "type": "Identifier"
 | |
|                     },
 | |
|                     "arg": {
 | |
|                       "commentStart": 0,
 | |
|                       "elements": [
 | |
|                         {
 | |
|                           "arguments": [],
 | |
|                           "callee": {
 | |
|                             "abs_path": false,
 | |
|                             "commentStart": 0,
 | |
|                             "end": 0,
 | |
|                             "moduleId": 0,
 | |
|                             "name": {
 | |
|                               "commentStart": 0,
 | |
|                               "end": 0,
 | |
|                               "moduleId": 0,
 | |
|                               "name": "profileStartX",
 | |
|                               "start": 0,
 | |
|                               "type": "Identifier"
 | |
|                             },
 | |
|                             "path": [],
 | |
|                             "start": 0,
 | |
|                             "type": "Name"
 | |
|                           },
 | |
|                           "commentStart": 0,
 | |
|                           "end": 0,
 | |
|                           "moduleId": 0,
 | |
|                           "start": 0,
 | |
|                           "type": "CallExpressionKw",
 | |
|                           "type": "CallExpressionKw",
 | |
|                           "unlabeled": {
 | |
|                             "commentStart": 0,
 | |
|                             "end": 0,
 | |
|                             "moduleId": 0,
 | |
|                             "start": 0,
 | |
|                             "type": "PipeSubstitution",
 | |
|                             "type": "PipeSubstitution"
 | |
|                           }
 | |
|                         },
 | |
|                         {
 | |
|                           "arguments": [],
 | |
|                           "callee": {
 | |
|                             "abs_path": false,
 | |
|                             "commentStart": 0,
 | |
|                             "end": 0,
 | |
|                             "moduleId": 0,
 | |
|                             "name": {
 | |
|                               "commentStart": 0,
 | |
|                               "end": 0,
 | |
|                               "moduleId": 0,
 | |
|                               "name": "profileStartY",
 | |
|                               "start": 0,
 | |
|                               "type": "Identifier"
 | |
|                             },
 | |
|                             "path": [],
 | |
|                             "start": 0,
 | |
|                             "type": "Name"
 | |
|                           },
 | |
|                           "commentStart": 0,
 | |
|                           "end": 0,
 | |
|                           "moduleId": 0,
 | |
|                           "start": 0,
 | |
|                           "type": "CallExpressionKw",
 | |
|                           "type": "CallExpressionKw",
 | |
|                           "unlabeled": {
 | |
|                             "commentStart": 0,
 | |
|                             "end": 0,
 | |
|                             "moduleId": 0,
 | |
|                             "start": 0,
 | |
|                             "type": "PipeSubstitution",
 | |
|                             "type": "PipeSubstitution"
 | |
|                           }
 | |
|                         }
 | |
|                       ],
 | |
|                       "end": 0,
 | |
|                       "moduleId": 0,
 | |
|                       "start": 0,
 | |
|                       "type": "ArrayExpression",
 | |
|                       "type": "ArrayExpression"
 | |
|                     }
 | |
|                   }
 | |
|                 ],
 | |
|                 "callee": {
 | |
|                   "abs_path": false,
 | |
|                   "commentStart": 0,
 | |
|                   "end": 0,
 | |
|                   "moduleId": 0,
 | |
|                   "name": {
 | |
|                     "commentStart": 0,
 | |
|                     "end": 0,
 | |
|                     "moduleId": 0,
 | |
|                     "name": "line",
 | |
|                     "start": 0,
 | |
|                     "type": "Identifier"
 | |
|                   },
 | |
|                   "path": [],
 | |
|                   "start": 0,
 | |
|                   "type": "Name"
 | |
|                 },
 | |
|                 "commentStart": 0,
 | |
|                 "end": 0,
 | |
|                 "moduleId": 0,
 | |
|                 "start": 0,
 | |
|                 "type": "CallExpressionKw",
 | |
|                 "type": "CallExpressionKw",
 | |
|                 "unlabeled": null
 | |
|               },
 | |
|               {
 | |
|                 "arguments": [],
 | |
|                 "callee": {
 | |
|                   "abs_path": false,
 | |
|                   "commentStart": 0,
 | |
|                   "end": 0,
 | |
|                   "moduleId": 0,
 | |
|                   "name": {
 | |
|                     "commentStart": 0,
 | |
|                     "end": 0,
 | |
|                     "moduleId": 0,
 | |
|                     "name": "close",
 | |
|                     "start": 0,
 | |
|                     "type": "Identifier"
 | |
|                   },
 | |
|                   "path": [],
 | |
|                   "start": 0,
 | |
|                   "type": "Name"
 | |
|                 },
 | |
|                 "commentStart": 0,
 | |
|                 "end": 0,
 | |
|                 "moduleId": 0,
 | |
|                 "start": 0,
 | |
|                 "type": "CallExpressionKw",
 | |
|                 "type": "CallExpressionKw",
 | |
|                 "unlabeled": null
 | |
|               }
 | |
|             ],
 | |
|             "commentStart": 0,
 | |
|             "end": 0,
 | |
|             "moduleId": 0,
 | |
|             "nonCodeMeta": {
 | |
|               "nonCodeNodes": {
 | |
|                 "7": [
 | |
|                   {
 | |
|                     "commentStart": 0,
 | |
|                     "end": 0,
 | |
|                     "moduleId": 0,
 | |
|                     "start": 0,
 | |
|                     "type": "NonCodeNode",
 | |
|                     "value": {
 | |
|                       "type": "newLineBlockComment",
 | |
|                       "value": "Extrude the center cross beam and pattern to every frame",
 | |
|                       "style": "line"
 | |
|                     }
 | |
|                   }
 | |
|                 ]
 | |
|               },
 | |
|               "startNodes": []
 | |
|             },
 | |
|             "start": 0,
 | |
|             "type": "PipeExpression",
 | |
|             "type": "PipeExpression"
 | |
|           },
 | |
|           "moduleId": 0,
 | |
|           "start": 0,
 | |
|           "type": "VariableDeclarator"
 | |
|         },
 | |
|         "end": 0,
 | |
|         "kind": "const",
 | |
|         "moduleId": 0,
 | |
|         "start": 0,
 | |
|         "type": "VariableDeclaration",
 | |
|         "type": "VariableDeclaration"
 | |
|       },
 | |
|       {
 | |
|         "commentStart": 0,
 | |
|         "declaration": {
 | |
|           "commentStart": 0,
 | |
|           "end": 0,
 | |
|           "id": {
 | |
|             "commentStart": 0,
 | |
|             "end": 0,
 | |
|             "moduleId": 0,
 | |
|             "name": "centerCrossBeam",
 | |
|             "start": 0,
 | |
|             "type": "Identifier"
 | |
|           },
 | |
|           "init": {
 | |
|             "body": [
 | |
|               {
 | |
|                 "arguments": [
 | |
|                   {
 | |
|                     "type": "LabeledArg",
 | |
|                     "label": {
 | |
|                       "commentStart": 0,
 | |
|                       "end": 0,
 | |
|                       "moduleId": 0,
 | |
|                       "name": "length",
 | |
|                       "start": 0,
 | |
|                       "type": "Identifier"
 | |
|                     },
 | |
|                     "arg": {
 | |
|                       "argument": {
 | |
|                         "abs_path": false,
 | |
|                         "commentStart": 0,
 | |
|                         "end": 0,
 | |
|                         "moduleId": 0,
 | |
|                         "name": {
 | |
|                           "commentStart": 0,
 | |
|                           "end": 0,
 | |
|                           "moduleId": 0,
 | |
|                           "name": "crossBeamLength",
 | |
|                           "start": 0,
 | |
|                           "type": "Identifier"
 | |
|                         },
 | |
|                         "path": [],
 | |
|                         "start": 0,
 | |
|                         "type": "Name",
 | |
|                         "type": "Name"
 | |
|                       },
 | |
|                       "commentStart": 0,
 | |
|                       "end": 0,
 | |
|                       "moduleId": 0,
 | |
|                       "operator": "-",
 | |
|                       "start": 0,
 | |
|                       "type": "UnaryExpression",
 | |
|                       "type": "UnaryExpression"
 | |
|                     }
 | |
|                   }
 | |
|                 ],
 | |
|                 "callee": {
 | |
|                   "abs_path": false,
 | |
|                   "commentStart": 0,
 | |
|                   "end": 0,
 | |
|                   "moduleId": 0,
 | |
|                   "name": {
 | |
|                     "commentStart": 0,
 | |
|                     "end": 0,
 | |
|                     "moduleId": 0,
 | |
|                     "name": "extrude",
 | |
|                     "start": 0,
 | |
|                     "type": "Identifier"
 | |
|                   },
 | |
|                   "path": [],
 | |
|                   "start": 0,
 | |
|                   "type": "Name"
 | |
|                 },
 | |
|                 "commentStart": 0,
 | |
|                 "end": 0,
 | |
|                 "moduleId": 0,
 | |
|                 "start": 0,
 | |
|                 "type": "CallExpressionKw",
 | |
|                 "type": "CallExpressionKw",
 | |
|                 "unlabeled": {
 | |
|                   "abs_path": false,
 | |
|                   "commentStart": 0,
 | |
|                   "end": 0,
 | |
|                   "moduleId": 0,
 | |
|                   "name": {
 | |
|                     "commentStart": 0,
 | |
|                     "end": 0,
 | |
|                     "moduleId": 0,
 | |
|                     "name": "profile005",
 | |
|                     "start": 0,
 | |
|                     "type": "Identifier"
 | |
|                   },
 | |
|                   "path": [],
 | |
|                   "start": 0,
 | |
|                   "type": "Name",
 | |
|                   "type": "Name"
 | |
|                 }
 | |
|               },
 | |
|               {
 | |
|                 "arguments": [
 | |
|                   {
 | |
|                     "type": "LabeledArg",
 | |
|                     "label": {
 | |
|                       "commentStart": 0,
 | |
|                       "end": 0,
 | |
|                       "moduleId": 0,
 | |
|                       "name": "instances",
 | |
|                       "start": 0,
 | |
|                       "type": "Identifier"
 | |
|                     },
 | |
|                     "arg": {
 | |
|                       "commentStart": 0,
 | |
|                       "end": 0,
 | |
|                       "left": {
 | |
|                         "abs_path": false,
 | |
|                         "commentStart": 0,
 | |
|                         "end": 0,
 | |
|                         "moduleId": 0,
 | |
|                         "name": {
 | |
|                           "commentStart": 0,
 | |
|                           "end": 0,
 | |
|                           "moduleId": 0,
 | |
|                           "name": "nFrames",
 | |
|                           "start": 0,
 | |
|                           "type": "Identifier"
 | |
|                         },
 | |
|                         "path": [],
 | |
|                         "start": 0,
 | |
|                         "type": "Name",
 | |
|                         "type": "Name"
 | |
|                       },
 | |
|                       "moduleId": 0,
 | |
|                       "operator": "-",
 | |
|                       "right": {
 | |
|                         "commentStart": 0,
 | |
|                         "end": 0,
 | |
|                         "moduleId": 0,
 | |
|                         "raw": "1",
 | |
|                         "start": 0,
 | |
|                         "type": "Literal",
 | |
|                         "type": "Literal",
 | |
|                         "value": {
 | |
|                           "value": 1.0,
 | |
|                           "suffix": "None"
 | |
|                         }
 | |
|                       },
 | |
|                       "start": 0,
 | |
|                       "type": "BinaryExpression",
 | |
|                       "type": "BinaryExpression"
 | |
|                     }
 | |
|                   },
 | |
|                   {
 | |
|                     "type": "LabeledArg",
 | |
|                     "label": {
 | |
|                       "commentStart": 0,
 | |
|                       "end": 0,
 | |
|                       "moduleId": 0,
 | |
|                       "name": "distance",
 | |
|                       "start": 0,
 | |
|                       "type": "Identifier"
 | |
|                     },
 | |
|                     "arg": {
 | |
|                       "commentStart": 0,
 | |
|                       "end": 0,
 | |
|                       "left": {
 | |
|                         "abs_path": false,
 | |
|                         "commentStart": 0,
 | |
|                         "end": 0,
 | |
|                         "moduleId": 0,
 | |
|                         "name": {
 | |
|                           "commentStart": 0,
 | |
|                           "end": 0,
 | |
|                           "moduleId": 0,
 | |
|                           "name": "crossBeamLength",
 | |
|                           "start": 0,
 | |
|                           "type": "Identifier"
 | |
|                         },
 | |
|                         "path": [],
 | |
|                         "start": 0,
 | |
|                         "type": "Name",
 | |
|                         "type": "Name"
 | |
|                       },
 | |
|                       "moduleId": 0,
 | |
|                       "operator": "+",
 | |
|                       "right": {
 | |
|                         "abs_path": false,
 | |
|                         "commentStart": 0,
 | |
|                         "end": 0,
 | |
|                         "moduleId": 0,
 | |
|                         "name": {
 | |
|                           "commentStart": 0,
 | |
|                           "end": 0,
 | |
|                           "moduleId": 0,
 | |
|                           "name": "beamLength",
 | |
|                           "start": 0,
 | |
|                           "type": "Identifier"
 | |
|                         },
 | |
|                         "path": [],
 | |
|                         "start": 0,
 | |
|                         "type": "Name",
 | |
|                         "type": "Name"
 | |
|                       },
 | |
|                       "start": 0,
 | |
|                       "type": "BinaryExpression",
 | |
|                       "type": "BinaryExpression"
 | |
|                     }
 | |
|                   },
 | |
|                   {
 | |
|                     "type": "LabeledArg",
 | |
|                     "label": {
 | |
|                       "commentStart": 0,
 | |
|                       "end": 0,
 | |
|                       "moduleId": 0,
 | |
|                       "name": "axis",
 | |
|                       "start": 0,
 | |
|                       "type": "Identifier"
 | |
|                     },
 | |
|                     "arg": {
 | |
|                       "commentStart": 0,
 | |
|                       "elements": [
 | |
|                         {
 | |
|                           "argument": {
 | |
|                             "commentStart": 0,
 | |
|                             "end": 0,
 | |
|                             "moduleId": 0,
 | |
|                             "raw": "1",
 | |
|                             "start": 0,
 | |
|                             "type": "Literal",
 | |
|                             "type": "Literal",
 | |
|                             "value": {
 | |
|                               "value": 1.0,
 | |
|                               "suffix": "None"
 | |
|                             }
 | |
|                           },
 | |
|                           "commentStart": 0,
 | |
|                           "end": 0,
 | |
|                           "moduleId": 0,
 | |
|                           "operator": "-",
 | |
|                           "start": 0,
 | |
|                           "type": "UnaryExpression",
 | |
|                           "type": "UnaryExpression"
 | |
|                         },
 | |
|                         {
 | |
|                           "commentStart": 0,
 | |
|                           "end": 0,
 | |
|                           "moduleId": 0,
 | |
|                           "raw": "0",
 | |
|                           "start": 0,
 | |
|                           "type": "Literal",
 | |
|                           "type": "Literal",
 | |
|                           "value": {
 | |
|                             "value": 0.0,
 | |
|                             "suffix": "None"
 | |
|                           }
 | |
|                         },
 | |
|                         {
 | |
|                           "commentStart": 0,
 | |
|                           "end": 0,
 | |
|                           "moduleId": 0,
 | |
|                           "raw": "0",
 | |
|                           "start": 0,
 | |
|                           "type": "Literal",
 | |
|                           "type": "Literal",
 | |
|                           "value": {
 | |
|                             "value": 0.0,
 | |
|                             "suffix": "None"
 | |
|                           }
 | |
|                         }
 | |
|                       ],
 | |
|                       "end": 0,
 | |
|                       "moduleId": 0,
 | |
|                       "start": 0,
 | |
|                       "type": "ArrayExpression",
 | |
|                       "type": "ArrayExpression"
 | |
|                     }
 | |
|                   }
 | |
|                 ],
 | |
|                 "callee": {
 | |
|                   "abs_path": false,
 | |
|                   "commentStart": 0,
 | |
|                   "end": 0,
 | |
|                   "moduleId": 0,
 | |
|                   "name": {
 | |
|                     "commentStart": 0,
 | |
|                     "end": 0,
 | |
|                     "moduleId": 0,
 | |
|                     "name": "patternLinear3d",
 | |
|                     "start": 0,
 | |
|                     "type": "Identifier"
 | |
|                   },
 | |
|                   "path": [],
 | |
|                   "start": 0,
 | |
|                   "type": "Name"
 | |
|                 },
 | |
|                 "commentStart": 0,
 | |
|                 "end": 0,
 | |
|                 "moduleId": 0,
 | |
|                 "start": 0,
 | |
|                 "type": "CallExpressionKw",
 | |
|                 "type": "CallExpressionKw",
 | |
|                 "unlabeled": {
 | |
|                   "commentStart": 0,
 | |
|                   "end": 0,
 | |
|                   "moduleId": 0,
 | |
|                   "start": 0,
 | |
|                   "type": "PipeSubstitution",
 | |
|                   "type": "PipeSubstitution"
 | |
|                 }
 | |
|               }
 | |
|             ],
 | |
|             "commentStart": 0,
 | |
|             "end": 0,
 | |
|             "moduleId": 0,
 | |
|             "nonCodeMeta": {
 | |
|               "nonCodeNodes": {
 | |
|                 "1": [
 | |
|                   {
 | |
|                     "commentStart": 0,
 | |
|                     "end": 0,
 | |
|                     "moduleId": 0,
 | |
|                     "start": 0,
 | |
|                     "type": "NonCodeNode",
 | |
|                     "value": {
 | |
|                       "type": "newLineBlockComment",
 | |
|                       "value": "Create the two side cross beams",
 | |
|                       "style": "line"
 | |
|                     }
 | |
|                   }
 | |
|                 ]
 | |
|               },
 | |
|               "startNodes": []
 | |
|             },
 | |
|             "start": 0,
 | |
|             "type": "PipeExpression",
 | |
|             "type": "PipeExpression"
 | |
|           },
 | |
|           "moduleId": 0,
 | |
|           "start": 0,
 | |
|           "type": "VariableDeclarator"
 | |
|         },
 | |
|         "end": 0,
 | |
|         "kind": "const",
 | |
|         "moduleId": 0,
 | |
|         "start": 0,
 | |
|         "type": "VariableDeclaration",
 | |
|         "type": "VariableDeclaration"
 | |
|       },
 | |
|       {
 | |
|         "commentStart": 0,
 | |
|         "declaration": {
 | |
|           "commentStart": 0,
 | |
|           "end": 0,
 | |
|           "id": {
 | |
|             "commentStart": 0,
 | |
|             "end": 0,
 | |
|             "moduleId": 0,
 | |
|             "name": "sideCrossBeamSketch",
 | |
|             "start": 0,
 | |
|             "type": "Identifier"
 | |
|           },
 | |
|           "init": {
 | |
|             "arguments": [],
 | |
|             "callee": {
 | |
|               "abs_path": false,
 | |
|               "commentStart": 0,
 | |
|               "end": 0,
 | |
|               "moduleId": 0,
 | |
|               "name": {
 | |
|                 "commentStart": 0,
 | |
|                 "end": 0,
 | |
|                 "moduleId": 0,
 | |
|                 "name": "startSketchOn",
 | |
|                 "start": 0,
 | |
|                 "type": "Identifier"
 | |
|               },
 | |
|               "path": [],
 | |
|               "start": 0,
 | |
|               "type": "Name"
 | |
|             },
 | |
|             "commentStart": 0,
 | |
|             "end": 0,
 | |
|             "moduleId": 0,
 | |
|             "start": 0,
 | |
|             "type": "CallExpressionKw",
 | |
|             "type": "CallExpressionKw",
 | |
|             "unlabeled": {
 | |
|               "argument": {
 | |
|                 "abs_path": false,
 | |
|                 "commentStart": 0,
 | |
|                 "end": 0,
 | |
|                 "moduleId": 0,
 | |
|                 "name": {
 | |
|                   "commentStart": 0,
 | |
|                   "end": 0,
 | |
|                   "moduleId": 0,
 | |
|                   "name": "YZ",
 | |
|                   "start": 0,
 | |
|                   "type": "Identifier"
 | |
|                 },
 | |
|                 "path": [],
 | |
|                 "start": 0,
 | |
|                 "type": "Name",
 | |
|                 "type": "Name"
 | |
|               },
 | |
|               "commentStart": 0,
 | |
|               "end": 0,
 | |
|               "moduleId": 0,
 | |
|               "operator": "-",
 | |
|               "start": 0,
 | |
|               "type": "UnaryExpression",
 | |
|               "type": "UnaryExpression"
 | |
|             }
 | |
|           },
 | |
|           "moduleId": 0,
 | |
|           "start": 0,
 | |
|           "type": "VariableDeclarator"
 | |
|         },
 | |
|         "end": 0,
 | |
|         "kind": "const",
 | |
|         "moduleId": 0,
 | |
|         "start": 0,
 | |
|         "type": "VariableDeclaration",
 | |
|         "type": "VariableDeclaration"
 | |
|       },
 | |
|       {
 | |
|         "commentStart": 0,
 | |
|         "declaration": {
 | |
|           "commentStart": 0,
 | |
|           "end": 0,
 | |
|           "id": {
 | |
|             "commentStart": 0,
 | |
|             "end": 0,
 | |
|             "moduleId": 0,
 | |
|             "name": "profile008",
 | |
|             "start": 0,
 | |
|             "type": "Identifier"
 | |
|           },
 | |
|           "init": {
 | |
|             "body": [
 | |
|               {
 | |
|                 "arguments": [
 | |
|                   {
 | |
|                     "type": "LabeledArg",
 | |
|                     "label": {
 | |
|                       "commentStart": 0,
 | |
|                       "end": 0,
 | |
|                       "moduleId": 0,
 | |
|                       "name": "at",
 | |
|                       "start": 0,
 | |
|                       "type": "Identifier"
 | |
|                     },
 | |
|                     "arg": {
 | |
|                       "commentStart": 0,
 | |
|                       "elements": [
 | |
|                         {
 | |
|                           "commentStart": 0,
 | |
|                           "end": 0,
 | |
|                           "left": {
 | |
|                             "commentStart": 0,
 | |
|                             "end": 0,
 | |
|                             "left": {
 | |
|                               "argument": {
 | |
|                                 "abs_path": false,
 | |
|                                 "commentStart": 0,
 | |
|                                 "end": 0,
 | |
|                                 "moduleId": 0,
 | |
|                                 "name": {
 | |
|                                   "commentStart": 0,
 | |
|                                   "end": 0,
 | |
|                                   "moduleId": 0,
 | |
|                                   "name": "totalWidth",
 | |
|                                   "start": 0,
 | |
|                                   "type": "Identifier"
 | |
|                                 },
 | |
|                                 "path": [],
 | |
|                                 "start": 0,
 | |
|                                 "type": "Name",
 | |
|                                 "type": "Name"
 | |
|                               },
 | |
|                               "commentStart": 0,
 | |
|                               "end": 0,
 | |
|                               "moduleId": 0,
 | |
|                               "operator": "-",
 | |
|                               "start": 0,
 | |
|                               "type": "UnaryExpression",
 | |
|                               "type": "UnaryExpression"
 | |
|                             },
 | |
|                             "moduleId": 0,
 | |
|                             "operator": "/",
 | |
|                             "right": {
 | |
|                               "commentStart": 0,
 | |
|                               "end": 0,
 | |
|                               "moduleId": 0,
 | |
|                               "raw": "2",
 | |
|                               "start": 0,
 | |
|                               "type": "Literal",
 | |
|                               "type": "Literal",
 | |
|                               "value": {
 | |
|                                 "value": 2.0,
 | |
|                                 "suffix": "None"
 | |
|                               }
 | |
|                             },
 | |
|                             "start": 0,
 | |
|                             "type": "BinaryExpression",
 | |
|                             "type": "BinaryExpression"
 | |
|                           },
 | |
|                           "moduleId": 0,
 | |
|                           "operator": "+",
 | |
|                           "right": {
 | |
|                             "commentStart": 0,
 | |
|                             "end": 0,
 | |
|                             "moduleId": 0,
 | |
|                             "raw": "0.5",
 | |
|                             "start": 0,
 | |
|                             "type": "Literal",
 | |
|                             "type": "Literal",
 | |
|                             "value": {
 | |
|                               "value": 0.5,
 | |
|                               "suffix": "None"
 | |
|                             }
 | |
|                           },
 | |
|                           "start": 0,
 | |
|                           "type": "BinaryExpression",
 | |
|                           "type": "BinaryExpression"
 | |
|                         },
 | |
|                         {
 | |
|                           "commentStart": 0,
 | |
|                           "end": 0,
 | |
|                           "left": {
 | |
|                             "arguments": [],
 | |
|                             "callee": {
 | |
|                               "abs_path": false,
 | |
|                               "commentStart": 0,
 | |
|                               "end": 0,
 | |
|                               "moduleId": 0,
 | |
|                               "name": {
 | |
|                                 "commentStart": 0,
 | |
|                                 "end": 0,
 | |
|                                 "moduleId": 0,
 | |
|                                 "name": "segEndY",
 | |
|                                 "start": 0,
 | |
|                                 "type": "Identifier"
 | |
|                               },
 | |
|                               "path": [],
 | |
|                               "start": 0,
 | |
|                               "type": "Name"
 | |
|                             },
 | |
|                             "commentStart": 0,
 | |
|                             "end": 0,
 | |
|                             "moduleId": 0,
 | |
|                             "start": 0,
 | |
|                             "type": "CallExpressionKw",
 | |
|                             "type": "CallExpressionKw",
 | |
|                             "unlabeled": {
 | |
|                               "abs_path": false,
 | |
|                               "commentStart": 0,
 | |
|                               "end": 0,
 | |
|                               "moduleId": 0,
 | |
|                               "name": {
 | |
|                                 "commentStart": 0,
 | |
|                                 "end": 0,
 | |
|                                 "moduleId": 0,
 | |
|                                 "name": "tag002",
 | |
|                                 "start": 0,
 | |
|                                 "type": "Identifier"
 | |
|                               },
 | |
|                               "path": [],
 | |
|                               "start": 0,
 | |
|                               "type": "Name",
 | |
|                               "type": "Name"
 | |
|                             }
 | |
|                           },
 | |
|                           "moduleId": 0,
 | |
|                           "operator": "-",
 | |
|                           "right": {
 | |
|                             "commentStart": 0,
 | |
|                             "end": 0,
 | |
|                             "moduleId": 0,
 | |
|                             "raw": ".5",
 | |
|                             "start": 0,
 | |
|                             "type": "Literal",
 | |
|                             "type": "Literal",
 | |
|                             "value": {
 | |
|                               "value": 0.5,
 | |
|                               "suffix": "None"
 | |
|                             }
 | |
|                           },
 | |
|                           "start": 0,
 | |
|                           "type": "BinaryExpression",
 | |
|                           "type": "BinaryExpression"
 | |
|                         }
 | |
|                       ],
 | |
|                       "end": 0,
 | |
|                       "moduleId": 0,
 | |
|                       "start": 0,
 | |
|                       "type": "ArrayExpression",
 | |
|                       "type": "ArrayExpression"
 | |
|                     }
 | |
|                   }
 | |
|                 ],
 | |
|                 "callee": {
 | |
|                   "abs_path": false,
 | |
|                   "commentStart": 0,
 | |
|                   "end": 0,
 | |
|                   "moduleId": 0,
 | |
|                   "name": {
 | |
|                     "commentStart": 0,
 | |
|                     "end": 0,
 | |
|                     "moduleId": 0,
 | |
|                     "name": "startProfile",
 | |
|                     "start": 0,
 | |
|                     "type": "Identifier"
 | |
|                   },
 | |
|                   "path": [],
 | |
|                   "start": 0,
 | |
|                   "type": "Name"
 | |
|                 },
 | |
|                 "commentStart": 0,
 | |
|                 "end": 0,
 | |
|                 "moduleId": 0,
 | |
|                 "start": 0,
 | |
|                 "type": "CallExpressionKw",
 | |
|                 "type": "CallExpressionKw",
 | |
|                 "unlabeled": {
 | |
|                   "abs_path": false,
 | |
|                   "commentStart": 0,
 | |
|                   "end": 0,
 | |
|                   "moduleId": 0,
 | |
|                   "name": {
 | |
|                     "commentStart": 0,
 | |
|                     "end": 0,
 | |
|                     "moduleId": 0,
 | |
|                     "name": "sideCrossBeamSketch",
 | |
|                     "start": 0,
 | |
|                     "type": "Identifier"
 | |
|                   },
 | |
|                   "path": [],
 | |
|                   "start": 0,
 | |
|                   "type": "Name",
 | |
|                   "type": "Name"
 | |
|                 }
 | |
|               },
 | |
|               {
 | |
|                 "arguments": [
 | |
|                   {
 | |
|                     "type": "LabeledArg",
 | |
|                     "label": {
 | |
|                       "commentStart": 0,
 | |
|                       "end": 0,
 | |
|                       "moduleId": 0,
 | |
|                       "name": "length",
 | |
|                       "start": 0,
 | |
|                       "type": "Identifier"
 | |
|                     },
 | |
|                     "arg": {
 | |
|                       "argument": {
 | |
|                         "abs_path": false,
 | |
|                         "commentStart": 0,
 | |
|                         "end": 0,
 | |
|                         "moduleId": 0,
 | |
|                         "name": {
 | |
|                           "commentStart": 0,
 | |
|                           "end": 0,
 | |
|                           "moduleId": 0,
 | |
|                           "name": "beamLength",
 | |
|                           "start": 0,
 | |
|                           "type": "Identifier"
 | |
|                         },
 | |
|                         "path": [],
 | |
|                         "start": 0,
 | |
|                         "type": "Name",
 | |
|                         "type": "Name"
 | |
|                       },
 | |
|                       "commentStart": 0,
 | |
|                       "end": 0,
 | |
|                       "moduleId": 0,
 | |
|                       "operator": "-",
 | |
|                       "start": 0,
 | |
|                       "type": "UnaryExpression",
 | |
|                       "type": "UnaryExpression"
 | |
|                     }
 | |
|                   }
 | |
|                 ],
 | |
|                 "callee": {
 | |
|                   "abs_path": false,
 | |
|                   "commentStart": 0,
 | |
|                   "end": 0,
 | |
|                   "moduleId": 0,
 | |
|                   "name": {
 | |
|                     "commentStart": 0,
 | |
|                     "end": 0,
 | |
|                     "moduleId": 0,
 | |
|                     "name": "yLine",
 | |
|                     "start": 0,
 | |
|                     "type": "Identifier"
 | |
|                   },
 | |
|                   "path": [],
 | |
|                   "start": 0,
 | |
|                   "type": "Name"
 | |
|                 },
 | |
|                 "commentStart": 0,
 | |
|                 "end": 0,
 | |
|                 "moduleId": 0,
 | |
|                 "start": 0,
 | |
|                 "type": "CallExpressionKw",
 | |
|                 "type": "CallExpressionKw",
 | |
|                 "unlabeled": null
 | |
|               },
 | |
|               {
 | |
|                 "arguments": [
 | |
|                   {
 | |
|                     "type": "LabeledArg",
 | |
|                     "label": {
 | |
|                       "commentStart": 0,
 | |
|                       "end": 0,
 | |
|                       "moduleId": 0,
 | |
|                       "name": "length",
 | |
|                       "start": 0,
 | |
|                       "type": "Identifier"
 | |
|                     },
 | |
|                     "arg": {
 | |
|                       "commentStart": 0,
 | |
|                       "end": 0,
 | |
|                       "left": {
 | |
|                         "commentStart": 0,
 | |
|                         "end": 0,
 | |
|                         "left": {
 | |
|                           "commentStart": 0,
 | |
|                           "end": 0,
 | |
|                           "moduleId": 0,
 | |
|                           "raw": "3",
 | |
|                           "start": 0,
 | |
|                           "type": "Literal",
 | |
|                           "type": "Literal",
 | |
|                           "value": {
 | |
|                             "value": 3.0,
 | |
|                             "suffix": "None"
 | |
|                           }
 | |
|                         },
 | |
|                         "moduleId": 0,
 | |
|                         "operator": "/",
 | |
|                         "right": {
 | |
|                           "commentStart": 0,
 | |
|                           "end": 0,
 | |
|                           "moduleId": 0,
 | |
|                           "raw": "4",
 | |
|                           "start": 0,
 | |
|                           "type": "Literal",
 | |
|                           "type": "Literal",
 | |
|                           "value": {
 | |
|                             "value": 4.0,
 | |
|                             "suffix": "None"
 | |
|                           }
 | |
|                         },
 | |
|                         "start": 0,
 | |
|                         "type": "BinaryExpression",
 | |
|                         "type": "BinaryExpression"
 | |
|                       },
 | |
|                       "moduleId": 0,
 | |
|                       "operator": "*",
 | |
|                       "right": {
 | |
|                         "abs_path": false,
 | |
|                         "commentStart": 0,
 | |
|                         "end": 0,
 | |
|                         "moduleId": 0,
 | |
|                         "name": {
 | |
|                           "commentStart": 0,
 | |
|                           "end": 0,
 | |
|                           "moduleId": 0,
 | |
|                           "name": "beamWidth",
 | |
|                           "start": 0,
 | |
|                           "type": "Identifier"
 | |
|                         },
 | |
|                         "path": [],
 | |
|                         "start": 0,
 | |
|                         "type": "Name",
 | |
|                         "type": "Name"
 | |
|                       },
 | |
|                       "start": 0,
 | |
|                       "type": "BinaryExpression",
 | |
|                       "type": "BinaryExpression"
 | |
|                     }
 | |
|                   }
 | |
|                 ],
 | |
|                 "callee": {
 | |
|                   "abs_path": false,
 | |
|                   "commentStart": 0,
 | |
|                   "end": 0,
 | |
|                   "moduleId": 0,
 | |
|                   "name": {
 | |
|                     "commentStart": 0,
 | |
|                     "end": 0,
 | |
|                     "moduleId": 0,
 | |
|                     "name": "xLine",
 | |
|                     "start": 0,
 | |
|                     "type": "Identifier"
 | |
|                   },
 | |
|                   "path": [],
 | |
|                   "start": 0,
 | |
|                   "type": "Name"
 | |
|                 },
 | |
|                 "commentStart": 0,
 | |
|                 "end": 0,
 | |
|                 "moduleId": 0,
 | |
|                 "start": 0,
 | |
|                 "type": "CallExpressionKw",
 | |
|                 "type": "CallExpressionKw",
 | |
|                 "unlabeled": null
 | |
|               },
 | |
|               {
 | |
|                 "arguments": [
 | |
|                   {
 | |
|                     "type": "LabeledArg",
 | |
|                     "label": {
 | |
|                       "commentStart": 0,
 | |
|                       "end": 0,
 | |
|                       "moduleId": 0,
 | |
|                       "name": "length",
 | |
|                       "start": 0,
 | |
|                       "type": "Identifier"
 | |
|                     },
 | |
|                     "arg": {
 | |
|                       "abs_path": false,
 | |
|                       "commentStart": 0,
 | |
|                       "end": 0,
 | |
|                       "moduleId": 0,
 | |
|                       "name": {
 | |
|                         "commentStart": 0,
 | |
|                         "end": 0,
 | |
|                         "moduleId": 0,
 | |
|                         "name": "beamLength",
 | |
|                         "start": 0,
 | |
|                         "type": "Identifier"
 | |
|                       },
 | |
|                       "path": [],
 | |
|                       "start": 0,
 | |
|                       "type": "Name",
 | |
|                       "type": "Name"
 | |
|                     }
 | |
|                   }
 | |
|                 ],
 | |
|                 "callee": {
 | |
|                   "abs_path": false,
 | |
|                   "commentStart": 0,
 | |
|                   "end": 0,
 | |
|                   "moduleId": 0,
 | |
|                   "name": {
 | |
|                     "commentStart": 0,
 | |
|                     "end": 0,
 | |
|                     "moduleId": 0,
 | |
|                     "name": "yLine",
 | |
|                     "start": 0,
 | |
|                     "type": "Identifier"
 | |
|                   },
 | |
|                   "path": [],
 | |
|                   "start": 0,
 | |
|                   "type": "Name"
 | |
|                 },
 | |
|                 "commentStart": 0,
 | |
|                 "end": 0,
 | |
|                 "moduleId": 0,
 | |
|                 "start": 0,
 | |
|                 "type": "CallExpressionKw",
 | |
|                 "type": "CallExpressionKw",
 | |
|                 "unlabeled": null
 | |
|               },
 | |
|               {
 | |
|                 "arguments": [],
 | |
|                 "callee": {
 | |
|                   "abs_path": false,
 | |
|                   "commentStart": 0,
 | |
|                   "end": 0,
 | |
|                   "moduleId": 0,
 | |
|                   "name": {
 | |
|                     "commentStart": 0,
 | |
|                     "end": 0,
 | |
|                     "moduleId": 0,
 | |
|                     "name": "close",
 | |
|                     "start": 0,
 | |
|                     "type": "Identifier"
 | |
|                   },
 | |
|                   "path": [],
 | |
|                   "start": 0,
 | |
|                   "type": "Name"
 | |
|                 },
 | |
|                 "commentStart": 0,
 | |
|                 "end": 0,
 | |
|                 "moduleId": 0,
 | |
|                 "start": 0,
 | |
|                 "type": "CallExpressionKw",
 | |
|                 "type": "CallExpressionKw",
 | |
|                 "unlabeled": null
 | |
|               }
 | |
|             ],
 | |
|             "commentStart": 0,
 | |
|             "end": 0,
 | |
|             "moduleId": 0,
 | |
|             "start": 0,
 | |
|             "type": "PipeExpression",
 | |
|             "type": "PipeExpression"
 | |
|           },
 | |
|           "moduleId": 0,
 | |
|           "start": 0,
 | |
|           "type": "VariableDeclarator"
 | |
|         },
 | |
|         "end": 0,
 | |
|         "kind": "const",
 | |
|         "moduleId": 0,
 | |
|         "start": 0,
 | |
|         "type": "VariableDeclaration",
 | |
|         "type": "VariableDeclaration"
 | |
|       },
 | |
|       {
 | |
|         "commentStart": 0,
 | |
|         "declaration": {
 | |
|           "commentStart": 0,
 | |
|           "end": 0,
 | |
|           "id": {
 | |
|             "commentStart": 0,
 | |
|             "end": 0,
 | |
|             "moduleId": 0,
 | |
|             "name": "profile009",
 | |
|             "start": 0,
 | |
|             "type": "Identifier"
 | |
|           },
 | |
|           "init": {
 | |
|             "body": [
 | |
|               {
 | |
|                 "arguments": [
 | |
|                   {
 | |
|                     "type": "LabeledArg",
 | |
|                     "label": {
 | |
|                       "commentStart": 0,
 | |
|                       "end": 0,
 | |
|                       "moduleId": 0,
 | |
|                       "name": "at",
 | |
|                       "start": 0,
 | |
|                       "type": "Identifier"
 | |
|                     },
 | |
|                     "arg": {
 | |
|                       "commentStart": 0,
 | |
|                       "elements": [
 | |
|                         {
 | |
|                           "commentStart": 0,
 | |
|                           "end": 0,
 | |
|                           "left": {
 | |
|                             "abs_path": false,
 | |
|                             "commentStart": 0,
 | |
|                             "end": 0,
 | |
|                             "moduleId": 0,
 | |
|                             "name": {
 | |
|                               "commentStart": 0,
 | |
|                               "end": 0,
 | |
|                               "moduleId": 0,
 | |
|                               "name": "totalWidth",
 | |
|                               "start": 0,
 | |
|                               "type": "Identifier"
 | |
|                             },
 | |
|                             "path": [],
 | |
|                             "start": 0,
 | |
|                             "type": "Name",
 | |
|                             "type": "Name"
 | |
|                           },
 | |
|                           "moduleId": 0,
 | |
|                           "operator": "/",
 | |
|                           "right": {
 | |
|                             "commentStart": 0,
 | |
|                             "end": 0,
 | |
|                             "moduleId": 0,
 | |
|                             "raw": "2",
 | |
|                             "start": 0,
 | |
|                             "type": "Literal",
 | |
|                             "type": "Literal",
 | |
|                             "value": {
 | |
|                               "value": 2.0,
 | |
|                               "suffix": "None"
 | |
|                             }
 | |
|                           },
 | |
|                           "start": 0,
 | |
|                           "type": "BinaryExpression",
 | |
|                           "type": "BinaryExpression"
 | |
|                         },
 | |
|                         {
 | |
|                           "commentStart": 0,
 | |
|                           "end": 0,
 | |
|                           "left": {
 | |
|                             "arguments": [],
 | |
|                             "callee": {
 | |
|                               "abs_path": false,
 | |
|                               "commentStart": 0,
 | |
|                               "end": 0,
 | |
|                               "moduleId": 0,
 | |
|                               "name": {
 | |
|                                 "commentStart": 0,
 | |
|                                 "end": 0,
 | |
|                                 "moduleId": 0,
 | |
|                                 "name": "segEndY",
 | |
|                                 "start": 0,
 | |
|                                 "type": "Identifier"
 | |
|                               },
 | |
|                               "path": [],
 | |
|                               "start": 0,
 | |
|                               "type": "Name"
 | |
|                             },
 | |
|                             "commentStart": 0,
 | |
|                             "end": 0,
 | |
|                             "moduleId": 0,
 | |
|                             "start": 0,
 | |
|                             "type": "CallExpressionKw",
 | |
|                             "type": "CallExpressionKw",
 | |
|                             "unlabeled": {
 | |
|                               "abs_path": false,
 | |
|                               "commentStart": 0,
 | |
|                               "end": 0,
 | |
|                               "moduleId": 0,
 | |
|                               "name": {
 | |
|                                 "commentStart": 0,
 | |
|                                 "end": 0,
 | |
|                                 "moduleId": 0,
 | |
|                                 "name": "tag002",
 | |
|                                 "start": 0,
 | |
|                                 "type": "Identifier"
 | |
|                               },
 | |
|                               "path": [],
 | |
|                               "start": 0,
 | |
|                               "type": "Name",
 | |
|                               "type": "Name"
 | |
|                             }
 | |
|                           },
 | |
|                           "moduleId": 0,
 | |
|                           "operator": "-",
 | |
|                           "right": {
 | |
|                             "commentStart": 0,
 | |
|                             "end": 0,
 | |
|                             "moduleId": 0,
 | |
|                             "raw": ".5",
 | |
|                             "start": 0,
 | |
|                             "type": "Literal",
 | |
|                             "type": "Literal",
 | |
|                             "value": {
 | |
|                               "value": 0.5,
 | |
|                               "suffix": "None"
 | |
|                             }
 | |
|                           },
 | |
|                           "start": 0,
 | |
|                           "type": "BinaryExpression",
 | |
|                           "type": "BinaryExpression"
 | |
|                         }
 | |
|                       ],
 | |
|                       "end": 0,
 | |
|                       "moduleId": 0,
 | |
|                       "start": 0,
 | |
|                       "type": "ArrayExpression",
 | |
|                       "type": "ArrayExpression"
 | |
|                     }
 | |
|                   }
 | |
|                 ],
 | |
|                 "callee": {
 | |
|                   "abs_path": false,
 | |
|                   "commentStart": 0,
 | |
|                   "end": 0,
 | |
|                   "moduleId": 0,
 | |
|                   "name": {
 | |
|                     "commentStart": 0,
 | |
|                     "end": 0,
 | |
|                     "moduleId": 0,
 | |
|                     "name": "startProfile",
 | |
|                     "start": 0,
 | |
|                     "type": "Identifier"
 | |
|                   },
 | |
|                   "path": [],
 | |
|                   "start": 0,
 | |
|                   "type": "Name"
 | |
|                 },
 | |
|                 "commentStart": 0,
 | |
|                 "end": 0,
 | |
|                 "moduleId": 0,
 | |
|                 "start": 0,
 | |
|                 "type": "CallExpressionKw",
 | |
|                 "type": "CallExpressionKw",
 | |
|                 "unlabeled": {
 | |
|                   "abs_path": false,
 | |
|                   "commentStart": 0,
 | |
|                   "end": 0,
 | |
|                   "moduleId": 0,
 | |
|                   "name": {
 | |
|                     "commentStart": 0,
 | |
|                     "end": 0,
 | |
|                     "moduleId": 0,
 | |
|                     "name": "sideCrossBeamSketch",
 | |
|                     "start": 0,
 | |
|                     "type": "Identifier"
 | |
|                   },
 | |
|                   "path": [],
 | |
|                   "start": 0,
 | |
|                   "type": "Name",
 | |
|                   "type": "Name"
 | |
|                 }
 | |
|               },
 | |
|               {
 | |
|                 "arguments": [
 | |
|                   {
 | |
|                     "type": "LabeledArg",
 | |
|                     "label": {
 | |
|                       "commentStart": 0,
 | |
|                       "end": 0,
 | |
|                       "moduleId": 0,
 | |
|                       "name": "length",
 | |
|                       "start": 0,
 | |
|                       "type": "Identifier"
 | |
|                     },
 | |
|                     "arg": {
 | |
|                       "argument": {
 | |
|                         "abs_path": false,
 | |
|                         "commentStart": 0,
 | |
|                         "end": 0,
 | |
|                         "moduleId": 0,
 | |
|                         "name": {
 | |
|                           "commentStart": 0,
 | |
|                           "end": 0,
 | |
|                           "moduleId": 0,
 | |
|                           "name": "beamLength",
 | |
|                           "start": 0,
 | |
|                           "type": "Identifier"
 | |
|                         },
 | |
|                         "path": [],
 | |
|                         "start": 0,
 | |
|                         "type": "Name",
 | |
|                         "type": "Name"
 | |
|                       },
 | |
|                       "commentStart": 0,
 | |
|                       "end": 0,
 | |
|                       "moduleId": 0,
 | |
|                       "operator": "-",
 | |
|                       "start": 0,
 | |
|                       "type": "UnaryExpression",
 | |
|                       "type": "UnaryExpression"
 | |
|                     }
 | |
|                   }
 | |
|                 ],
 | |
|                 "callee": {
 | |
|                   "abs_path": false,
 | |
|                   "commentStart": 0,
 | |
|                   "end": 0,
 | |
|                   "moduleId": 0,
 | |
|                   "name": {
 | |
|                     "commentStart": 0,
 | |
|                     "end": 0,
 | |
|                     "moduleId": 0,
 | |
|                     "name": "yLine",
 | |
|                     "start": 0,
 | |
|                     "type": "Identifier"
 | |
|                   },
 | |
|                   "path": [],
 | |
|                   "start": 0,
 | |
|                   "type": "Name"
 | |
|                 },
 | |
|                 "commentStart": 0,
 | |
|                 "end": 0,
 | |
|                 "moduleId": 0,
 | |
|                 "start": 0,
 | |
|                 "type": "CallExpressionKw",
 | |
|                 "type": "CallExpressionKw",
 | |
|                 "unlabeled": null
 | |
|               },
 | |
|               {
 | |
|                 "arguments": [
 | |
|                   {
 | |
|                     "type": "LabeledArg",
 | |
|                     "label": {
 | |
|                       "commentStart": 0,
 | |
|                       "end": 0,
 | |
|                       "moduleId": 0,
 | |
|                       "name": "length",
 | |
|                       "start": 0,
 | |
|                       "type": "Identifier"
 | |
|                     },
 | |
|                     "arg": {
 | |
|                       "commentStart": 0,
 | |
|                       "end": 0,
 | |
|                       "left": {
 | |
|                         "commentStart": 0,
 | |
|                         "end": 0,
 | |
|                         "left": {
 | |
|                           "argument": {
 | |
|                             "commentStart": 0,
 | |
|                             "end": 0,
 | |
|                             "moduleId": 0,
 | |
|                             "raw": "3",
 | |
|                             "start": 0,
 | |
|                             "type": "Literal",
 | |
|                             "type": "Literal",
 | |
|                             "value": {
 | |
|                               "value": 3.0,
 | |
|                               "suffix": "None"
 | |
|                             }
 | |
|                           },
 | |
|                           "commentStart": 0,
 | |
|                           "end": 0,
 | |
|                           "moduleId": 0,
 | |
|                           "operator": "-",
 | |
|                           "start": 0,
 | |
|                           "type": "UnaryExpression",
 | |
|                           "type": "UnaryExpression"
 | |
|                         },
 | |
|                         "moduleId": 0,
 | |
|                         "operator": "/",
 | |
|                         "right": {
 | |
|                           "commentStart": 0,
 | |
|                           "end": 0,
 | |
|                           "moduleId": 0,
 | |
|                           "raw": "4",
 | |
|                           "start": 0,
 | |
|                           "type": "Literal",
 | |
|                           "type": "Literal",
 | |
|                           "value": {
 | |
|                             "value": 4.0,
 | |
|                             "suffix": "None"
 | |
|                           }
 | |
|                         },
 | |
|                         "start": 0,
 | |
|                         "type": "BinaryExpression",
 | |
|                         "type": "BinaryExpression"
 | |
|                       },
 | |
|                       "moduleId": 0,
 | |
|                       "operator": "*",
 | |
|                       "right": {
 | |
|                         "abs_path": false,
 | |
|                         "commentStart": 0,
 | |
|                         "end": 0,
 | |
|                         "moduleId": 0,
 | |
|                         "name": {
 | |
|                           "commentStart": 0,
 | |
|                           "end": 0,
 | |
|                           "moduleId": 0,
 | |
|                           "name": "beamWidth",
 | |
|                           "start": 0,
 | |
|                           "type": "Identifier"
 | |
|                         },
 | |
|                         "path": [],
 | |
|                         "start": 0,
 | |
|                         "type": "Name",
 | |
|                         "type": "Name"
 | |
|                       },
 | |
|                       "start": 0,
 | |
|                       "type": "BinaryExpression",
 | |
|                       "type": "BinaryExpression"
 | |
|                     }
 | |
|                   }
 | |
|                 ],
 | |
|                 "callee": {
 | |
|                   "abs_path": false,
 | |
|                   "commentStart": 0,
 | |
|                   "end": 0,
 | |
|                   "moduleId": 0,
 | |
|                   "name": {
 | |
|                     "commentStart": 0,
 | |
|                     "end": 0,
 | |
|                     "moduleId": 0,
 | |
|                     "name": "xLine",
 | |
|                     "start": 0,
 | |
|                     "type": "Identifier"
 | |
|                   },
 | |
|                   "path": [],
 | |
|                   "start": 0,
 | |
|                   "type": "Name"
 | |
|                 },
 | |
|                 "commentStart": 0,
 | |
|                 "end": 0,
 | |
|                 "moduleId": 0,
 | |
|                 "start": 0,
 | |
|                 "type": "CallExpressionKw",
 | |
|                 "type": "CallExpressionKw",
 | |
|                 "unlabeled": {
 | |
|                   "commentStart": 0,
 | |
|                   "end": 0,
 | |
|                   "moduleId": 0,
 | |
|                   "start": 0,
 | |
|                   "type": "PipeSubstitution",
 | |
|                   "type": "PipeSubstitution"
 | |
|                 }
 | |
|               },
 | |
|               {
 | |
|                 "arguments": [
 | |
|                   {
 | |
|                     "type": "LabeledArg",
 | |
|                     "label": {
 | |
|                       "commentStart": 0,
 | |
|                       "end": 0,
 | |
|                       "moduleId": 0,
 | |
|                       "name": "length",
 | |
|                       "start": 0,
 | |
|                       "type": "Identifier"
 | |
|                     },
 | |
|                     "arg": {
 | |
|                       "abs_path": false,
 | |
|                       "commentStart": 0,
 | |
|                       "end": 0,
 | |
|                       "moduleId": 0,
 | |
|                       "name": {
 | |
|                         "commentStart": 0,
 | |
|                         "end": 0,
 | |
|                         "moduleId": 0,
 | |
|                         "name": "beamLength",
 | |
|                         "start": 0,
 | |
|                         "type": "Identifier"
 | |
|                       },
 | |
|                       "path": [],
 | |
|                       "start": 0,
 | |
|                       "type": "Name",
 | |
|                       "type": "Name"
 | |
|                     }
 | |
|                   }
 | |
|                 ],
 | |
|                 "callee": {
 | |
|                   "abs_path": false,
 | |
|                   "commentStart": 0,
 | |
|                   "end": 0,
 | |
|                   "moduleId": 0,
 | |
|                   "name": {
 | |
|                     "commentStart": 0,
 | |
|                     "end": 0,
 | |
|                     "moduleId": 0,
 | |
|                     "name": "yLine",
 | |
|                     "start": 0,
 | |
|                     "type": "Identifier"
 | |
|                   },
 | |
|                   "path": [],
 | |
|                   "start": 0,
 | |
|                   "type": "Name"
 | |
|                 },
 | |
|                 "commentStart": 0,
 | |
|                 "end": 0,
 | |
|                 "moduleId": 0,
 | |
|                 "start": 0,
 | |
|                 "type": "CallExpressionKw",
 | |
|                 "type": "CallExpressionKw",
 | |
|                 "unlabeled": {
 | |
|                   "commentStart": 0,
 | |
|                   "end": 0,
 | |
|                   "moduleId": 0,
 | |
|                   "start": 0,
 | |
|                   "type": "PipeSubstitution",
 | |
|                   "type": "PipeSubstitution"
 | |
|                 }
 | |
|               },
 | |
|               {
 | |
|                 "arguments": [],
 | |
|                 "callee": {
 | |
|                   "abs_path": false,
 | |
|                   "commentStart": 0,
 | |
|                   "end": 0,
 | |
|                   "moduleId": 0,
 | |
|                   "name": {
 | |
|                     "commentStart": 0,
 | |
|                     "end": 0,
 | |
|                     "moduleId": 0,
 | |
|                     "name": "close",
 | |
|                     "start": 0,
 | |
|                     "type": "Identifier"
 | |
|                   },
 | |
|                   "path": [],
 | |
|                   "start": 0,
 | |
|                   "type": "Name"
 | |
|                 },
 | |
|                 "commentStart": 0,
 | |
|                 "end": 0,
 | |
|                 "moduleId": 0,
 | |
|                 "start": 0,
 | |
|                 "type": "CallExpressionKw",
 | |
|                 "type": "CallExpressionKw",
 | |
|                 "unlabeled": {
 | |
|                   "commentStart": 0,
 | |
|                   "end": 0,
 | |
|                   "moduleId": 0,
 | |
|                   "start": 0,
 | |
|                   "type": "PipeSubstitution",
 | |
|                   "type": "PipeSubstitution"
 | |
|                 }
 | |
|               }
 | |
|             ],
 | |
|             "commentStart": 0,
 | |
|             "end": 0,
 | |
|             "moduleId": 0,
 | |
|             "nonCodeMeta": {
 | |
|               "nonCodeNodes": {
 | |
|                 "4": [
 | |
|                   {
 | |
|                     "commentStart": 0,
 | |
|                     "end": 0,
 | |
|                     "moduleId": 0,
 | |
|                     "start": 0,
 | |
|                     "type": "NonCodeNode",
 | |
|                     "value": {
 | |
|                       "type": "newLineBlockComment",
 | |
|                       "value": "Extrude the side cross beams and pattern to every frame.",
 | |
|                       "style": "line"
 | |
|                     }
 | |
|                   }
 | |
|                 ]
 | |
|               },
 | |
|               "startNodes": []
 | |
|             },
 | |
|             "start": 0,
 | |
|             "type": "PipeExpression",
 | |
|             "type": "PipeExpression"
 | |
|           },
 | |
|           "moduleId": 0,
 | |
|           "start": 0,
 | |
|           "type": "VariableDeclarator"
 | |
|         },
 | |
|         "end": 0,
 | |
|         "kind": "const",
 | |
|         "moduleId": 0,
 | |
|         "start": 0,
 | |
|         "type": "VariableDeclaration",
 | |
|         "type": "VariableDeclaration"
 | |
|       },
 | |
|       {
 | |
|         "commentStart": 0,
 | |
|         "end": 0,
 | |
|         "expression": {
 | |
|           "body": [
 | |
|             {
 | |
|               "arguments": [
 | |
|                 {
 | |
|                   "type": "LabeledArg",
 | |
|                   "label": {
 | |
|                     "commentStart": 0,
 | |
|                     "end": 0,
 | |
|                     "moduleId": 0,
 | |
|                     "name": "length",
 | |
|                     "start": 0,
 | |
|                     "type": "Identifier"
 | |
|                   },
 | |
|                   "arg": {
 | |
|                     "abs_path": false,
 | |
|                     "commentStart": 0,
 | |
|                     "end": 0,
 | |
|                     "moduleId": 0,
 | |
|                     "name": {
 | |
|                       "commentStart": 0,
 | |
|                       "end": 0,
 | |
|                       "moduleId": 0,
 | |
|                       "name": "crossBeamLength",
 | |
|                       "start": 0,
 | |
|                       "type": "Identifier"
 | |
|                     },
 | |
|                     "path": [],
 | |
|                     "start": 0,
 | |
|                     "type": "Name",
 | |
|                     "type": "Name"
 | |
|                   }
 | |
|                 }
 | |
|               ],
 | |
|               "callee": {
 | |
|                 "abs_path": false,
 | |
|                 "commentStart": 0,
 | |
|                 "end": 0,
 | |
|                 "moduleId": 0,
 | |
|                 "name": {
 | |
|                   "commentStart": 0,
 | |
|                   "end": 0,
 | |
|                   "moduleId": 0,
 | |
|                   "name": "extrude",
 | |
|                   "start": 0,
 | |
|                   "type": "Identifier"
 | |
|                 },
 | |
|                 "path": [],
 | |
|                 "start": 0,
 | |
|                 "type": "Name"
 | |
|               },
 | |
|               "commentStart": 0,
 | |
|               "end": 0,
 | |
|               "moduleId": 0,
 | |
|               "start": 0,
 | |
|               "type": "CallExpressionKw",
 | |
|               "type": "CallExpressionKw",
 | |
|               "unlabeled": {
 | |
|                 "commentStart": 0,
 | |
|                 "elements": [
 | |
|                   {
 | |
|                     "abs_path": false,
 | |
|                     "commentStart": 0,
 | |
|                     "end": 0,
 | |
|                     "moduleId": 0,
 | |
|                     "name": {
 | |
|                       "commentStart": 0,
 | |
|                       "end": 0,
 | |
|                       "moduleId": 0,
 | |
|                       "name": "profile008",
 | |
|                       "start": 0,
 | |
|                       "type": "Identifier"
 | |
|                     },
 | |
|                     "path": [],
 | |
|                     "start": 0,
 | |
|                     "type": "Name",
 | |
|                     "type": "Name"
 | |
|                   },
 | |
|                   {
 | |
|                     "abs_path": false,
 | |
|                     "commentStart": 0,
 | |
|                     "end": 0,
 | |
|                     "moduleId": 0,
 | |
|                     "name": {
 | |
|                       "commentStart": 0,
 | |
|                       "end": 0,
 | |
|                       "moduleId": 0,
 | |
|                       "name": "profile009",
 | |
|                       "start": 0,
 | |
|                       "type": "Identifier"
 | |
|                     },
 | |
|                     "path": [],
 | |
|                     "start": 0,
 | |
|                     "type": "Name",
 | |
|                     "type": "Name"
 | |
|                   }
 | |
|                 ],
 | |
|                 "end": 0,
 | |
|                 "moduleId": 0,
 | |
|                 "start": 0,
 | |
|                 "type": "ArrayExpression",
 | |
|                 "type": "ArrayExpression"
 | |
|               }
 | |
|             },
 | |
|             {
 | |
|               "arguments": [
 | |
|                 {
 | |
|                   "type": "LabeledArg",
 | |
|                   "label": {
 | |
|                     "commentStart": 0,
 | |
|                     "end": 0,
 | |
|                     "moduleId": 0,
 | |
|                     "name": "instances",
 | |
|                     "start": 0,
 | |
|                     "type": "Identifier"
 | |
|                   },
 | |
|                   "arg": {
 | |
|                     "commentStart": 0,
 | |
|                     "end": 0,
 | |
|                     "left": {
 | |
|                       "abs_path": false,
 | |
|                       "commentStart": 0,
 | |
|                       "end": 0,
 | |
|                       "moduleId": 0,
 | |
|                       "name": {
 | |
|                         "commentStart": 0,
 | |
|                         "end": 0,
 | |
|                         "moduleId": 0,
 | |
|                         "name": "nFrames",
 | |
|                         "start": 0,
 | |
|                         "type": "Identifier"
 | |
|                       },
 | |
|                       "path": [],
 | |
|                       "start": 0,
 | |
|                       "type": "Name",
 | |
|                       "type": "Name"
 | |
|                     },
 | |
|                     "moduleId": 0,
 | |
|                     "operator": "-",
 | |
|                     "right": {
 | |
|                       "commentStart": 0,
 | |
|                       "end": 0,
 | |
|                       "moduleId": 0,
 | |
|                       "raw": "1",
 | |
|                       "start": 0,
 | |
|                       "type": "Literal",
 | |
|                       "type": "Literal",
 | |
|                       "value": {
 | |
|                         "value": 1.0,
 | |
|                         "suffix": "None"
 | |
|                       }
 | |
|                     },
 | |
|                     "start": 0,
 | |
|                     "type": "BinaryExpression",
 | |
|                     "type": "BinaryExpression"
 | |
|                   }
 | |
|                 },
 | |
|                 {
 | |
|                   "type": "LabeledArg",
 | |
|                   "label": {
 | |
|                     "commentStart": 0,
 | |
|                     "end": 0,
 | |
|                     "moduleId": 0,
 | |
|                     "name": "distance",
 | |
|                     "start": 0,
 | |
|                     "type": "Identifier"
 | |
|                   },
 | |
|                   "arg": {
 | |
|                     "commentStart": 0,
 | |
|                     "end": 0,
 | |
|                     "left": {
 | |
|                       "abs_path": false,
 | |
|                       "commentStart": 0,
 | |
|                       "end": 0,
 | |
|                       "moduleId": 0,
 | |
|                       "name": {
 | |
|                         "commentStart": 0,
 | |
|                         "end": 0,
 | |
|                         "moduleId": 0,
 | |
|                         "name": "crossBeamLength",
 | |
|                         "start": 0,
 | |
|                         "type": "Identifier"
 | |
|                       },
 | |
|                       "path": [],
 | |
|                       "start": 0,
 | |
|                       "type": "Name",
 | |
|                       "type": "Name"
 | |
|                     },
 | |
|                     "moduleId": 0,
 | |
|                     "operator": "+",
 | |
|                     "right": {
 | |
|                       "abs_path": false,
 | |
|                       "commentStart": 0,
 | |
|                       "end": 0,
 | |
|                       "moduleId": 0,
 | |
|                       "name": {
 | |
|                         "commentStart": 0,
 | |
|                         "end": 0,
 | |
|                         "moduleId": 0,
 | |
|                         "name": "beamLength",
 | |
|                         "start": 0,
 | |
|                         "type": "Identifier"
 | |
|                       },
 | |
|                       "path": [],
 | |
|                       "start": 0,
 | |
|                       "type": "Name",
 | |
|                       "type": "Name"
 | |
|                     },
 | |
|                     "start": 0,
 | |
|                     "type": "BinaryExpression",
 | |
|                     "type": "BinaryExpression"
 | |
|                   }
 | |
|                 },
 | |
|                 {
 | |
|                   "type": "LabeledArg",
 | |
|                   "label": {
 | |
|                     "commentStart": 0,
 | |
|                     "end": 0,
 | |
|                     "moduleId": 0,
 | |
|                     "name": "axis",
 | |
|                     "start": 0,
 | |
|                     "type": "Identifier"
 | |
|                   },
 | |
|                   "arg": {
 | |
|                     "commentStart": 0,
 | |
|                     "elements": [
 | |
|                       {
 | |
|                         "argument": {
 | |
|                           "commentStart": 0,
 | |
|                           "end": 0,
 | |
|                           "moduleId": 0,
 | |
|                           "raw": "1",
 | |
|                           "start": 0,
 | |
|                           "type": "Literal",
 | |
|                           "type": "Literal",
 | |
|                           "value": {
 | |
|                             "value": 1.0,
 | |
|                             "suffix": "None"
 | |
|                           }
 | |
|                         },
 | |
|                         "commentStart": 0,
 | |
|                         "end": 0,
 | |
|                         "moduleId": 0,
 | |
|                         "operator": "-",
 | |
|                         "start": 0,
 | |
|                         "type": "UnaryExpression",
 | |
|                         "type": "UnaryExpression"
 | |
|                       },
 | |
|                       {
 | |
|                         "commentStart": 0,
 | |
|                         "end": 0,
 | |
|                         "moduleId": 0,
 | |
|                         "raw": "0",
 | |
|                         "start": 0,
 | |
|                         "type": "Literal",
 | |
|                         "type": "Literal",
 | |
|                         "value": {
 | |
|                           "value": 0.0,
 | |
|                           "suffix": "None"
 | |
|                         }
 | |
|                       },
 | |
|                       {
 | |
|                         "commentStart": 0,
 | |
|                         "end": 0,
 | |
|                         "moduleId": 0,
 | |
|                         "raw": "0",
 | |
|                         "start": 0,
 | |
|                         "type": "Literal",
 | |
|                         "type": "Literal",
 | |
|                         "value": {
 | |
|                           "value": 0.0,
 | |
|                           "suffix": "None"
 | |
|                         }
 | |
|                       }
 | |
|                     ],
 | |
|                     "end": 0,
 | |
|                     "moduleId": 0,
 | |
|                     "start": 0,
 | |
|                     "type": "ArrayExpression",
 | |
|                     "type": "ArrayExpression"
 | |
|                   }
 | |
|                 }
 | |
|               ],
 | |
|               "callee": {
 | |
|                 "abs_path": false,
 | |
|                 "commentStart": 0,
 | |
|                 "end": 0,
 | |
|                 "moduleId": 0,
 | |
|                 "name": {
 | |
|                   "commentStart": 0,
 | |
|                   "end": 0,
 | |
|                   "moduleId": 0,
 | |
|                   "name": "patternLinear3d",
 | |
|                   "start": 0,
 | |
|                   "type": "Identifier"
 | |
|                 },
 | |
|                 "path": [],
 | |
|                 "start": 0,
 | |
|                 "type": "Name"
 | |
|               },
 | |
|               "commentStart": 0,
 | |
|               "end": 0,
 | |
|               "moduleId": 0,
 | |
|               "start": 0,
 | |
|               "type": "CallExpressionKw",
 | |
|               "type": "CallExpressionKw",
 | |
|               "unlabeled": {
 | |
|                 "commentStart": 0,
 | |
|                 "end": 0,
 | |
|                 "moduleId": 0,
 | |
|                 "start": 0,
 | |
|                 "type": "PipeSubstitution",
 | |
|                 "type": "PipeSubstitution"
 | |
|               }
 | |
|             }
 | |
|           ],
 | |
|           "commentStart": 0,
 | |
|           "end": 0,
 | |
|           "moduleId": 0,
 | |
|           "start": 0,
 | |
|           "type": "PipeExpression",
 | |
|           "type": "PipeExpression"
 | |
|         },
 | |
|         "moduleId": 0,
 | |
|         "start": 0,
 | |
|         "type": "ExpressionStatement",
 | |
|         "type": "ExpressionStatement"
 | |
|       }
 | |
|     ],
 | |
|     "commentStart": 0,
 | |
|     "end": 0,
 | |
|     "innerAttrs": [
 | |
|       {
 | |
|         "commentStart": 0,
 | |
|         "end": 0,
 | |
|         "moduleId": 0,
 | |
|         "name": {
 | |
|           "commentStart": 0,
 | |
|           "end": 0,
 | |
|           "moduleId": 0,
 | |
|           "name": "settings",
 | |
|           "start": 0,
 | |
|           "type": "Identifier"
 | |
|         },
 | |
|         "properties": [
 | |
|           {
 | |
|             "commentStart": 0,
 | |
|             "end": 0,
 | |
|             "key": {
 | |
|               "commentStart": 0,
 | |
|               "end": 0,
 | |
|               "moduleId": 0,
 | |
|               "name": "defaultLengthUnit",
 | |
|               "start": 0,
 | |
|               "type": "Identifier"
 | |
|             },
 | |
|             "moduleId": 0,
 | |
|             "start": 0,
 | |
|             "type": "ObjectProperty",
 | |
|             "value": {
 | |
|               "abs_path": false,
 | |
|               "commentStart": 0,
 | |
|               "end": 0,
 | |
|               "moduleId": 0,
 | |
|               "name": {
 | |
|                 "commentStart": 0,
 | |
|                 "end": 0,
 | |
|                 "moduleId": 0,
 | |
|                 "name": "in",
 | |
|                 "start": 0,
 | |
|                 "type": "Identifier"
 | |
|               },
 | |
|               "path": [],
 | |
|               "start": 0,
 | |
|               "type": "Name",
 | |
|               "type": "Name"
 | |
|             }
 | |
|           }
 | |
|         ],
 | |
|         "start": 0,
 | |
|         "type": "Annotation"
 | |
|       }
 | |
|     ],
 | |
|     "moduleId": 0,
 | |
|     "nonCodeMeta": {
 | |
|       "nonCodeNodes": {
 | |
|         "13": [
 | |
|           {
 | |
|             "commentStart": 0,
 | |
|             "end": 0,
 | |
|             "moduleId": 0,
 | |
|             "start": 0,
 | |
|             "type": "NonCodeNode",
 | |
|             "value": {
 | |
|               "type": "newLine"
 | |
|             }
 | |
|           }
 | |
|         ],
 | |
|         "19": [
 | |
|           {
 | |
|             "commentStart": 0,
 | |
|             "end": 0,
 | |
|             "moduleId": 0,
 | |
|             "start": 0,
 | |
|             "type": "NonCodeNode",
 | |
|             "value": {
 | |
|               "type": "newLine"
 | |
|             }
 | |
|           }
 | |
|         ],
 | |
|         "21": [
 | |
|           {
 | |
|             "commentStart": 0,
 | |
|             "end": 0,
 | |
|             "moduleId": 0,
 | |
|             "start": 0,
 | |
|             "type": "NonCodeNode",
 | |
|             "value": {
 | |
|               "type": "newLine"
 | |
|             }
 | |
|           }
 | |
|         ],
 | |
|         "25": [
 | |
|           {
 | |
|             "commentStart": 0,
 | |
|             "end": 0,
 | |
|             "moduleId": 0,
 | |
|             "start": 0,
 | |
|             "type": "NonCodeNode",
 | |
|             "value": {
 | |
|               "type": "newLine"
 | |
|             }
 | |
|           }
 | |
|         ]
 | |
|       },
 | |
|       "startNodes": [
 | |
|         {
 | |
|           "commentStart": 0,
 | |
|           "end": 0,
 | |
|           "moduleId": 0,
 | |
|           "start": 0,
 | |
|           "type": "NonCodeNode",
 | |
|           "value": {
 | |
|             "type": "blockComment",
 | |
|             "value": "Truss Structure",
 | |
|             "style": "line"
 | |
|           }
 | |
|         },
 | |
|         {
 | |
|           "commentStart": 0,
 | |
|           "end": 0,
 | |
|           "moduleId": 0,
 | |
|           "start": 0,
 | |
|           "type": "NonCodeNode",
 | |
|           "value": {
 | |
|             "type": "blockComment",
 | |
|             "value": "A truss structure is a framework composed of triangular units made from straight members connected at joints, often called nodes. Trusses are widely used in architecture, civil engineering, and construction for their ability to support large loads with minimal material.",
 | |
|             "style": "line"
 | |
|           }
 | |
|         },
 | |
|         {
 | |
|           "commentStart": 0,
 | |
|           "end": 0,
 | |
|           "moduleId": 0,
 | |
|           "start": 0,
 | |
|           "type": "NonCodeNode",
 | |
|           "value": {
 | |
|             "type": "newLine"
 | |
|           }
 | |
|         },
 | |
|         {
 | |
|           "commentStart": 0,
 | |
|           "end": 0,
 | |
|           "moduleId": 0,
 | |
|           "start": 0,
 | |
|           "type": "NonCodeNode",
 | |
|           "value": {
 | |
|             "type": "newLine"
 | |
|           }
 | |
|         }
 | |
|       ]
 | |
|     },
 | |
|     "start": 0
 | |
|   }
 | |
| }
 |