--- source: kcl-lib/src/simulation_tests.rs description: Result of parsing gear.kcl --- { "Ok": { "body": [ { "commentStart": 472, "declaration": { "commentStart": 495, "end": 0, "id": { "commentStart": 495, "end": 0, "name": "nTeeth", "start": 0, "type": "Identifier" }, "init": { "commentStart": 504, "end": 0, "raw": "21", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 21.0, "suffix": "None" } }, "start": 0, "type": "VariableDeclarator" }, "end": 0, "kind": "const", "preComments": [ "// Define parameters" ], "start": 0, "type": "VariableDeclaration", "type": "VariableDeclaration" }, { "commentStart": 507, "declaration": { "commentStart": 507, "end": 0, "id": { "commentStart": 507, "end": 0, "name": "module", "start": 0, "type": "Identifier" }, "init": { "commentStart": 516, "end": 0, "raw": "0.5", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 0.5, "suffix": "None" } }, "start": 0, "type": "VariableDeclarator" }, "end": 0, "kind": "const", "start": 0, "type": "VariableDeclaration", "type": "VariableDeclaration" }, { "commentStart": 520, "declaration": { "commentStart": 520, "end": 0, "id": { "commentStart": 520, "end": 0, "name": "pitchDiameter", "start": 0, "type": "Identifier" }, "init": { "commentStart": 536, "end": 0, "left": { "abs_path": false, "commentStart": 536, "end": 0, "name": { "commentStart": 536, "end": 0, "name": "module", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name", "type": "Name" }, "operator": "*", "right": { "abs_path": false, "commentStart": 545, "end": 0, "name": { "commentStart": 545, "end": 0, "name": "nTeeth", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name", "type": "Name" }, "start": 0, "type": "BinaryExpression", "type": "BinaryExpression" }, "start": 0, "type": "VariableDeclarator" }, "end": 0, "kind": "const", "start": 0, "type": "VariableDeclaration", "type": "VariableDeclaration" }, { "commentStart": 552, "declaration": { "commentStart": 552, "end": 0, "id": { "commentStart": 552, "end": 0, "name": "pressureAngle", "start": 0, "type": "Identifier" }, "init": { "commentStart": 568, "end": 0, "raw": "20", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 20.0, "suffix": "None" } }, "start": 0, "type": "VariableDeclarator" }, "end": 0, "kind": "const", "start": 0, "type": "VariableDeclaration", "type": "VariableDeclaration" }, { "commentStart": 571, "declaration": { "commentStart": 571, "end": 0, "id": { "commentStart": 571, "end": 0, "name": "addendum", "start": 0, "type": "Identifier" }, "init": { "abs_path": false, "commentStart": 582, "end": 0, "name": { "commentStart": 582, "end": 0, "name": "module", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name", "type": "Name" }, "start": 0, "type": "VariableDeclarator" }, "end": 0, "kind": "const", "start": 0, "type": "VariableDeclaration", "type": "VariableDeclaration" }, { "commentStart": 589, "declaration": { "commentStart": 589, "end": 0, "id": { "commentStart": 589, "end": 0, "name": "deddendum", "start": 0, "type": "Identifier" }, "init": { "commentStart": 601, "end": 0, "left": { "commentStart": 601, "end": 0, "raw": "1.25", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 1.25, "suffix": "None" } }, "operator": "*", "right": { "abs_path": false, "commentStart": 608, "end": 0, "name": { "commentStart": 608, "end": 0, "name": "module", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name", "type": "Name" }, "start": 0, "type": "BinaryExpression", "type": "BinaryExpression" }, "start": 0, "type": "VariableDeclarator" }, "end": 0, "kind": "const", "start": 0, "type": "VariableDeclaration", "type": "VariableDeclaration" }, { "commentStart": 615, "declaration": { "commentStart": 615, "end": 0, "id": { "commentStart": 615, "end": 0, "name": "baseDiameter", "start": 0, "type": "Identifier" }, "init": { "commentStart": 630, "end": 0, "left": { "abs_path": false, "commentStart": 630, "end": 0, "name": { "commentStart": 630, "end": 0, "name": "pitchDiameter", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name", "type": "Name" }, "operator": "*", "right": { "arguments": [ { "arguments": [ { "abs_path": false, "commentStart": 660, "end": 0, "name": { "commentStart": 660, "end": 0, "name": "pressureAngle", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name", "type": "Name" } ], "callee": { "abs_path": false, "commentStart": 650, "end": 0, "name": { "commentStart": 650, "end": 0, "name": "toRadians", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name" }, "commentStart": 650, "end": 0, "start": 0, "type": "CallExpression", "type": "CallExpression" } ], "callee": { "abs_path": false, "commentStart": 646, "end": 0, "name": { "commentStart": 646, "end": 0, "name": "cos", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name" }, "commentStart": 646, "end": 0, "start": 0, "type": "CallExpression", "type": "CallExpression" }, "start": 0, "type": "BinaryExpression", "type": "BinaryExpression" }, "start": 0, "type": "VariableDeclarator" }, "end": 0, "kind": "const", "start": 0, "type": "VariableDeclaration", "type": "VariableDeclaration" }, { "commentStart": 676, "declaration": { "commentStart": 676, "end": 0, "id": { "commentStart": 676, "end": 0, "name": "tipDiameter", "start": 0, "type": "Identifier" }, "init": { "commentStart": 690, "end": 0, "left": { "abs_path": false, "commentStart": 690, "end": 0, "name": { "commentStart": 690, "end": 0, "name": "pitchDiameter", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name", "type": "Name" }, "operator": "+", "right": { "commentStart": 706, "end": 0, "left": { "commentStart": 706, "end": 0, "raw": "2", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 2.0, "suffix": "None" } }, "operator": "*", "right": { "abs_path": false, "commentStart": 710, "end": 0, "name": { "commentStart": 710, "end": 0, "name": "module", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name", "type": "Name" }, "start": 0, "type": "BinaryExpression", "type": "BinaryExpression" }, "start": 0, "type": "BinaryExpression", "type": "BinaryExpression" }, "start": 0, "type": "VariableDeclarator" }, "end": 0, "kind": "const", "start": 0, "type": "VariableDeclaration", "type": "VariableDeclaration" }, { "commentStart": 717, "declaration": { "commentStart": 717, "end": 0, "id": { "commentStart": 717, "end": 0, "name": "gearHeight", "start": 0, "type": "Identifier" }, "init": { "commentStart": 730, "end": 0, "raw": "3", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 3.0, "suffix": "None" } }, "start": 0, "type": "VariableDeclarator" }, "end": 0, "kind": "const", "start": 0, "type": "VariableDeclaration", "type": "VariableDeclaration" }, { "commentStart": 731, "declaration": { "commentStart": 780, "end": 0, "id": { "commentStart": 780, "end": 0, "name": "cmo", "start": 0, "type": "Identifier" }, "init": { "commentStart": 786, "end": 0, "raw": "101", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 101.0, "suffix": "None" } }, "start": 0, "type": "VariableDeclarator" }, "end": 0, "kind": "const", "preComments": [ "", "", "// Interpolate points along the involute curve" ], "start": 0, "type": "VariableDeclaration", "type": "VariableDeclaration" }, { "commentStart": 790, "declaration": { "commentStart": 790, "end": 0, "id": { "commentStart": 790, "end": 0, "name": "rs", "start": 0, "type": "Identifier" }, "init": { "arguments": [ { "commentStart": 799, "end": 0, "endElement": { "abs_path": false, "commentStart": 803, "end": 0, "name": { "commentStart": 803, "end": 0, "name": "cmo", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name", "type": "Name" }, "endInclusive": true, "start": 0, "startElement": { "commentStart": 800, "end": 0, "raw": "0", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 0.0, "suffix": "None" } }, "type": "ArrayRangeExpression", "type": "ArrayRangeExpression" }, { "body": { "body": [ { "argument": { "commentStart": 826, "end": 0, "left": { "commentStart": 826, "end": 0, "left": { "abs_path": false, "commentStart": 826, "end": 0, "name": { "commentStart": 826, "end": 0, "name": "baseDiameter", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name", "type": "Name" }, "operator": "/", "right": { "commentStart": 841, "end": 0, "raw": "2", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 2.0, "suffix": "None" } }, "start": 0, "type": "BinaryExpression", "type": "BinaryExpression" }, "operator": "+", "right": { "commentStart": 845, "end": 0, "left": { "commentStart": 845, "end": 0, "left": { "commentStart": 845, "end": 0, "left": { "abs_path": false, "commentStart": 845, "end": 0, "name": { "commentStart": 845, "end": 0, "name": "i", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name", "type": "Name" }, "operator": "/", "right": { "abs_path": false, "commentStart": 849, "end": 0, "name": { "commentStart": 849, "end": 0, "name": "cmo", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name", "type": "Name" }, "start": 0, "type": "BinaryExpression", "type": "BinaryExpression" }, "operator": "*", "right": { "commentStart": 856, "end": 0, "left": { "abs_path": false, "commentStart": 856, "end": 0, "name": { "commentStart": 856, "end": 0, "name": "tipDiameter", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name", "type": "Name" }, "operator": "-", "right": { "abs_path": false, "commentStart": 870, "end": 0, "name": { "commentStart": 870, "end": 0, "name": "baseDiameter", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name", "type": "Name" }, "start": 0, "type": "BinaryExpression", "type": "BinaryExpression" }, "start": 0, "type": "BinaryExpression", "type": "BinaryExpression" }, "operator": "/", "right": { "commentStart": 886, "end": 0, "raw": "2", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 2.0, "suffix": "None" } }, "start": 0, "type": "BinaryExpression", "type": "BinaryExpression" }, "start": 0, "type": "BinaryExpression", "type": "BinaryExpression" }, "commentStart": 819, "end": 0, "start": 0, "type": "ReturnStatement", "type": "ReturnStatement" } ], "commentStart": 815, "end": 0, "start": 0 }, "commentStart": 811, "end": 0, "params": [ { "type": "Parameter", "identifier": { "commentStart": 812, "end": 0, "name": "i", "start": 0, "type": "Identifier" } } ], "start": 0, "type": "FunctionExpression", "type": "FunctionExpression" } ], "callee": { "abs_path": false, "commentStart": 795, "end": 0, "name": { "commentStart": 795, "end": 0, "name": "map", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name" }, "commentStart": 795, "end": 0, "start": 0, "type": "CallExpression", "type": "CallExpression" }, "start": 0, "type": "VariableDeclarator" }, "end": 0, "kind": "const", "start": 0, "type": "VariableDeclaration", "type": "VariableDeclaration" }, { "commentStart": 890, "declaration": { "commentStart": 930, "end": 0, "id": { "commentStart": 930, "end": 0, "name": "angles", "start": 0, "type": "Identifier" }, "init": { "arguments": [ { "abs_path": false, "commentStart": 943, "end": 0, "name": { "commentStart": 943, "end": 0, "name": "rs", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name", "type": "Name" }, { "body": { "body": [ { "argument": { "arguments": [ { "arguments": [ { "commentStart": 981, "end": 0, "left": { "commentStart": 981, "end": 0, "left": { "abs_path": false, "commentStart": 981, "end": 0, "name": { "commentStart": 981, "end": 0, "name": "baseDiameter", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name", "type": "Name" }, "operator": "/", "right": { "commentStart": 996, "end": 0, "raw": "2", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 2.0, "suffix": "None" } }, "start": 0, "type": "BinaryExpression", "type": "BinaryExpression" }, "operator": "/", "right": { "abs_path": false, "commentStart": 1000, "end": 0, "name": { "commentStart": 1000, "end": 0, "name": "r", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name", "type": "Name" }, "start": 0, "type": "BinaryExpression", "type": "BinaryExpression" } ], "callee": { "abs_path": false, "commentStart": 976, "end": 0, "name": { "commentStart": 976, "end": 0, "name": "acos", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name" }, "commentStart": 976, "end": 0, "start": 0, "type": "CallExpression", "type": "CallExpression" } ], "callee": { "abs_path": false, "commentStart": 964, "end": 0, "name": { "commentStart": 964, "end": 0, "name": "toDegrees", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name" }, "commentStart": 964, "end": 0, "start": 0, "type": "CallExpression", "type": "CallExpression" }, "commentStart": 957, "end": 0, "start": 0, "type": "ReturnStatement", "type": "ReturnStatement" } ], "commentStart": 953, "end": 0, "start": 0 }, "commentStart": 949, "end": 0, "params": [ { "type": "Parameter", "identifier": { "commentStart": 950, "end": 0, "name": "r", "start": 0, "type": "Identifier" } } ], "start": 0, "type": "FunctionExpression", "type": "FunctionExpression" } ], "callee": { "abs_path": false, "commentStart": 939, "end": 0, "name": { "commentStart": 939, "end": 0, "name": "map", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name" }, "commentStart": 939, "end": 0, "start": 0, "type": "CallExpression", "type": "CallExpression" }, "start": 0, "type": "VariableDeclarator" }, "end": 0, "kind": "const", "preComments": [ "", "", "// Calculate operating pressure angle" ], "start": 0, "type": "VariableDeclaration", "type": "VariableDeclaration" }, { "commentStart": 1006, "declaration": { "commentStart": 1043, "end": 0, "id": { "commentStart": 1043, "end": 0, "name": "invas", "start": 0, "type": "Identifier" }, "init": { "arguments": [ { "abs_path": false, "commentStart": 1055, "end": 0, "name": { "commentStart": 1055, "end": 0, "name": "angles", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name", "type": "Name" }, { "body": { "body": [ { "argument": { "commentStart": 1080, "end": 0, "left": { "arguments": [ { "arguments": [ { "abs_path": false, "commentStart": 1094, "end": 0, "name": { "commentStart": 1094, "end": 0, "name": "a", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name", "type": "Name" } ], "callee": { "abs_path": false, "commentStart": 1084, "end": 0, "name": { "commentStart": 1084, "end": 0, "name": "toRadians", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name" }, "commentStart": 1084, "end": 0, "start": 0, "type": "CallExpression", "type": "CallExpression" } ], "callee": { "abs_path": false, "commentStart": 1080, "end": 0, "name": { "commentStart": 1080, "end": 0, "name": "tan", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name" }, "commentStart": 1080, "end": 0, "start": 0, "type": "CallExpression", "type": "CallExpression" }, "operator": "-", "right": { "arguments": [ { "abs_path": false, "commentStart": 1110, "end": 0, "name": { "commentStart": 1110, "end": 0, "name": "a", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name", "type": "Name" } ], "callee": { "abs_path": false, "commentStart": 1100, "end": 0, "name": { "commentStart": 1100, "end": 0, "name": "toRadians", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name" }, "commentStart": 1100, "end": 0, "start": 0, "type": "CallExpression", "type": "CallExpression" }, "start": 0, "type": "BinaryExpression", "type": "BinaryExpression" }, "commentStart": 1073, "end": 0, "start": 0, "type": "ReturnStatement", "type": "ReturnStatement" } ], "commentStart": 1069, "end": 0, "start": 0 }, "commentStart": 1065, "end": 0, "params": [ { "type": "Parameter", "identifier": { "commentStart": 1066, "end": 0, "name": "a", "start": 0, "type": "Identifier" } } ], "start": 0, "type": "FunctionExpression", "type": "FunctionExpression" } ], "callee": { "abs_path": false, "commentStart": 1051, "end": 0, "name": { "commentStart": 1051, "end": 0, "name": "map", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name" }, "commentStart": 1051, "end": 0, "start": 0, "type": "CallExpression", "type": "CallExpression" }, "start": 0, "type": "VariableDeclarator" }, "end": 0, "kind": "const", "preComments": [ "", "", "// Calculate the involute function" ], "start": 0, "type": "VariableDeclaration", "type": "VariableDeclaration" }, { "commentStart": 1115, "declaration": { "commentStart": 1143, "end": 0, "id": { "commentStart": 1143, "end": 0, "name": "xs", "start": 0, "type": "Identifier" }, "init": { "arguments": [ { "commentStart": 1152, "end": 0, "endElement": { "abs_path": false, "commentStart": 1156, "end": 0, "name": { "commentStart": 1156, "end": 0, "name": "cmo", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name", "type": "Name" }, "endInclusive": true, "start": 0, "startElement": { "commentStart": 1153, "end": 0, "raw": "0", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 0.0, "suffix": "None" } }, "type": "ArrayRangeExpression", "type": "ArrayRangeExpression" }, { "body": { "body": [ { "argument": { "commentStart": 1179, "end": 0, "left": { "commentStart": 1179, "computed": true, "end": 0, "object": { "commentStart": 1179, "end": 0, "name": "rs", "start": 0, "type": "Identifier", "type": "Identifier" }, "property": { "commentStart": 1182, "end": 0, "name": "i", "start": 0, "type": "Identifier", "type": "Identifier" }, "start": 0, "type": "MemberExpression", "type": "MemberExpression" }, "operator": "*", "right": { "arguments": [ { "commentStart": 1191, "computed": true, "end": 0, "object": { "commentStart": 1191, "end": 0, "name": "invas", "start": 0, "type": "Identifier", "type": "Identifier" }, "property": { "commentStart": 1197, "end": 0, "name": "i", "start": 0, "type": "Identifier", "type": "Identifier" }, "start": 0, "type": "MemberExpression", "type": "MemberExpression" } ], "callee": { "abs_path": false, "commentStart": 1187, "end": 0, "name": { "commentStart": 1187, "end": 0, "name": "cos", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name" }, "commentStart": 1187, "end": 0, "start": 0, "type": "CallExpression", "type": "CallExpression" }, "start": 0, "type": "BinaryExpression", "type": "BinaryExpression" }, "commentStart": 1172, "end": 0, "start": 0, "type": "ReturnStatement", "type": "ReturnStatement" } ], "commentStart": 1168, "end": 0, "start": 0 }, "commentStart": 1164, "end": 0, "params": [ { "type": "Parameter", "identifier": { "commentStart": 1165, "end": 0, "name": "i", "start": 0, "type": "Identifier" } } ], "start": 0, "type": "FunctionExpression", "type": "FunctionExpression" } ], "callee": { "abs_path": false, "commentStart": 1148, "end": 0, "name": { "commentStart": 1148, "end": 0, "name": "map", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name" }, "commentStart": 1148, "end": 0, "start": 0, "type": "CallExpression", "type": "CallExpression" }, "start": 0, "type": "VariableDeclarator" }, "end": 0, "kind": "const", "preComments": [ "", "", "// Map the involute curve" ], "start": 0, "type": "VariableDeclaration", "type": "VariableDeclaration" }, { "commentStart": 1203, "declaration": { "commentStart": 1205, "end": 0, "id": { "commentStart": 1205, "end": 0, "name": "ys", "start": 0, "type": "Identifier" }, "init": { "arguments": [ { "commentStart": 1214, "end": 0, "endElement": { "abs_path": false, "commentStart": 1218, "end": 0, "name": { "commentStart": 1218, "end": 0, "name": "cmo", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name", "type": "Name" }, "endInclusive": true, "start": 0, "startElement": { "commentStart": 1215, "end": 0, "raw": "0", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 0.0, "suffix": "None" } }, "type": "ArrayRangeExpression", "type": "ArrayRangeExpression" }, { "body": { "body": [ { "argument": { "commentStart": 1241, "end": 0, "left": { "commentStart": 1241, "computed": true, "end": 0, "object": { "commentStart": 1241, "end": 0, "name": "rs", "start": 0, "type": "Identifier", "type": "Identifier" }, "property": { "commentStart": 1244, "end": 0, "name": "i", "start": 0, "type": "Identifier", "type": "Identifier" }, "start": 0, "type": "MemberExpression", "type": "MemberExpression" }, "operator": "*", "right": { "arguments": [ { "commentStart": 1253, "computed": true, "end": 0, "object": { "commentStart": 1253, "end": 0, "name": "invas", "start": 0, "type": "Identifier", "type": "Identifier" }, "property": { "commentStart": 1259, "end": 0, "name": "i", "start": 0, "type": "Identifier", "type": "Identifier" }, "start": 0, "type": "MemberExpression", "type": "MemberExpression" } ], "callee": { "abs_path": false, "commentStart": 1249, "end": 0, "name": { "commentStart": 1249, "end": 0, "name": "sin", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name" }, "commentStart": 1249, "end": 0, "start": 0, "type": "CallExpression", "type": "CallExpression" }, "start": 0, "type": "BinaryExpression", "type": "BinaryExpression" }, "commentStart": 1234, "end": 0, "start": 0, "type": "ReturnStatement", "type": "ReturnStatement" } ], "commentStart": 1230, "end": 0, "start": 0 }, "commentStart": 1226, "end": 0, "params": [ { "type": "Parameter", "identifier": { "commentStart": 1227, "end": 0, "name": "i", "start": 0, "type": "Identifier" } } ], "start": 0, "type": "FunctionExpression", "type": "FunctionExpression" } ], "callee": { "abs_path": false, "commentStart": 1210, "end": 0, "name": { "commentStart": 1210, "end": 0, "name": "map", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name" }, "commentStart": 1210, "end": 0, "start": 0, "type": "CallExpression", "type": "CallExpression" }, "start": 0, "type": "VariableDeclarator" }, "end": 0, "kind": "const", "start": 0, "type": "VariableDeclaration", "type": "VariableDeclaration" }, { "commentStart": 1265, "declaration": { "commentStart": 1292, "end": 0, "id": { "commentStart": 1292, "end": 0, "name": "body", "start": 0, "type": "Identifier" }, "init": { "body": [ { "arguments": [ { "abs_path": false, "commentStart": 1313, "end": 0, "name": { "commentStart": 1313, "end": 0, "name": "XY", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name", "type": "Name" } ], "callee": { "abs_path": false, "commentStart": 1299, "end": 0, "name": { "commentStart": 1299, "end": 0, "name": "startSketchOn", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name" }, "commentStart": 1299, "end": 0, "start": 0, "type": "CallExpression", "type": "CallExpression" }, { "arguments": [ { "type": "LabeledArg", "label": { "commentStart": 1329, "end": 0, "name": "center", "start": 0, "type": "Identifier" }, "arg": { "commentStart": 1338, "elements": [ { "commentStart": 1339, "end": 0, "raw": "0", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 0.0, "suffix": "None" } }, { "commentStart": 1342, "end": 0, "raw": "0", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 0.0, "suffix": "None" } } ], "end": 0, "start": 0, "type": "ArrayExpression", "type": "ArrayExpression" } }, { "type": "LabeledArg", "label": { "commentStart": 1346, "end": 0, "name": "radius", "start": 0, "type": "Identifier" }, "arg": { "commentStart": 1355, "end": 0, "left": { "abs_path": false, "commentStart": 1355, "end": 0, "name": { "commentStart": 1355, "end": 0, "name": "baseDiameter", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name", "type": "Name" }, "operator": "/", "right": { "commentStart": 1370, "end": 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": 1322, "end": 0, "name": { "commentStart": 1322, "end": 0, "name": "circle", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name" }, "commentStart": 1322, "end": 0, "start": 0, "type": "CallExpressionKw", "type": "CallExpressionKw", "unlabeled": null }, { "arguments": [ { "type": "LabeledArg", "label": { "commentStart": 1386, "end": 0, "name": "length", "start": 0, "type": "Identifier" }, "arg": { "abs_path": false, "commentStart": 1395, "end": 0, "name": { "commentStart": 1395, "end": 0, "name": "gearHeight", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name", "type": "Name" } } ], "callee": { "abs_path": false, "commentStart": 1378, "end": 0, "name": { "commentStart": 1378, "end": 0, "name": "extrude", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name" }, "commentStart": 1378, "end": 0, "start": 0, "type": "CallExpressionKw", "type": "CallExpressionKw", "unlabeled": null } ], "commentStart": 1299, "end": 0, "start": 0, "type": "PipeExpression", "type": "PipeExpression" }, "start": 0, "type": "VariableDeclarator" }, "end": 0, "kind": "const", "preComments": [ "", "", "// Extrude the gear body" ], "start": 0, "type": "VariableDeclaration", "type": "VariableDeclaration" }, { "commentStart": 1406, "declaration": { "commentStart": 1408, "end": 0, "id": { "commentStart": 1408, "end": 0, "name": "toothAngle", "start": 0, "type": "Identifier" }, "init": { "commentStart": 1421, "end": 0, "left": { "commentStart": 1421, "end": 0, "left": { "commentStart": 1421, "end": 0, "raw": "360", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 360.0, "suffix": "None" } }, "operator": "/", "right": { "abs_path": false, "commentStart": 1427, "end": 0, "name": { "commentStart": 1427, "end": 0, "name": "nTeeth", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name", "type": "Name" }, "start": 0, "type": "BinaryExpression", "type": "BinaryExpression" }, "operator": "/", "right": { "commentStart": 1436, "end": 0, "raw": "1.5", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 1.5, "suffix": "None" } }, "start": 0, "type": "BinaryExpression", "type": "BinaryExpression" }, "start": 0, "type": "VariableDeclarator" }, "end": 0, "kind": "const", "start": 0, "type": "VariableDeclaration", "type": "VariableDeclaration" }, { "commentStart": 1439, "declaration": { "commentStart": 1471, "end": 0, "id": { "commentStart": 1471, "end": 0, "name": "leftInvolute", "start": 0, "type": "Identifier" }, "init": { "body": { "body": [ { "commentStart": 1495, "declaration": { "commentStart": 1495, "end": 0, "id": { "commentStart": 1495, "end": 0, "name": "j", "start": 0, "type": "Identifier" }, "init": { "commentStart": 1499, "end": 0, "left": { "commentStart": 1499, "end": 0, "raw": "100", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 100.0, "suffix": "None" } }, "operator": "-", "right": { "abs_path": false, "commentStart": 1505, "end": 0, "name": { "commentStart": 1505, "end": 0, "name": "i", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name", "type": "Name" }, "start": 0, "type": "BinaryExpression", "type": "BinaryExpression" }, "start": 0, "type": "VariableDeclarator" }, "end": 0, "kind": "const", "start": 0, "type": "VariableDeclaration", "type": "VariableDeclaration" }, { "argument": { "arguments": [ { "type": "LabeledArg", "label": { "commentStart": 1546, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { "commentStart": 1560, "elements": [ { "commentStart": 1561, "computed": true, "end": 0, "object": { "commentStart": 1561, "end": 0, "name": "xs", "start": 0, "type": "Identifier", "type": "Identifier" }, "property": { "commentStart": 1564, "end": 0, "name": "j", "start": 0, "type": "Identifier", "type": "Identifier" }, "start": 0, "type": "MemberExpression", "type": "MemberExpression" }, { "commentStart": 1568, "computed": true, "end": 0, "object": { "commentStart": 1568, "end": 0, "name": "ys", "start": 0, "type": "Identifier", "type": "Identifier" }, "property": { "commentStart": 1571, "end": 0, "name": "j", "start": 0, "type": "Identifier", "type": "Identifier" }, "start": 0, "type": "MemberExpression", "type": "MemberExpression" } ], "end": 0, "start": 0, "type": "ArrayExpression", "type": "ArrayExpression" } } ], "callee": { "abs_path": false, "commentStart": 1537, "end": 0, "name": { "commentStart": 1537, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name" }, "commentStart": 1537, "end": 0, "start": 0, "type": "CallExpressionKw", "type": "CallExpressionKw", "unlabeled": { "abs_path": false, "commentStart": 1542, "end": 0, "name": { "commentStart": 1542, "end": 0, "name": "sg", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name", "type": "Name" } }, "commentStart": 1506, "end": 0, "start": 0, "type": "ReturnStatement", "type": "ReturnStatement" } ], "commentStart": 1491, "end": 0, "nonCodeMeta": { "nonCodeNodes": { "0": [ { "commentStart": 1506, "end": 0, "start": 0, "type": "NonCodeNode", "value": { "type": "inlineComment", "value": "iterate backwards", "style": "line" } } ] }, "startNodes": [] }, "start": 0 }, "commentStart": 1483, "end": 0, "params": [ { "type": "Parameter", "identifier": { "commentStart": 1484, "end": 0, "name": "i", "start": 0, "type": "Identifier" } }, { "type": "Parameter", "identifier": { "commentStart": 1487, "end": 0, "name": "sg", "start": 0, "type": "Identifier" } } ], "start": 0, "type": "FunctionExpression", "type": "FunctionExpression" }, "start": 0, "type": "VariableDeclarator" }, "end": 0, "kind": "fn", "preComments": [ "", "", "// Plot the involute curve" ], "start": 0, "type": "VariableDeclaration", "type": "VariableDeclaration" }, { "commentStart": 1577, "declaration": { "commentStart": 1582, "end": 0, "id": { "commentStart": 1582, "end": 0, "name": "rightInvolute", "start": 0, "type": "Identifier" }, "init": { "body": { "body": [ { "commentStart": 1607, "declaration": { "commentStart": 1607, "end": 0, "id": { "commentStart": 1607, "end": 0, "name": "x", "start": 0, "type": "Identifier" }, "init": { "commentStart": 1611, "end": 0, "left": { "commentStart": 1611, "computed": true, "end": 0, "object": { "commentStart": 1611, "end": 0, "name": "rs", "start": 0, "type": "Identifier", "type": "Identifier" }, "property": { "commentStart": 1614, "end": 0, "name": "i", "start": 0, "type": "Identifier", "type": "Identifier" }, "start": 0, "type": "MemberExpression", "type": "MemberExpression" }, "operator": "*", "right": { "arguments": [ { "arguments": [ { "commentStart": 1633, "end": 0, "left": { "argument": { "abs_path": false, "commentStart": 1634, "end": 0, "name": { "commentStart": 1634, "end": 0, "name": "toothAngle", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name", "type": "Name" }, "commentStart": 1633, "end": 0, "operator": "-", "start": 0, "type": "UnaryExpression", "type": "UnaryExpression" }, "operator": "+", "right": { "arguments": [ { "arguments": [ { "commentStart": 1662, "end": 0, "left": { "commentStart": 1662, "computed": true, "end": 0, "object": { "commentStart": 1662, "end": 0, "name": "ys", "start": 0, "type": "Identifier", "type": "Identifier" }, "property": { "commentStart": 1665, "end": 0, "name": "i", "start": 0, "type": "Identifier", "type": "Identifier" }, "start": 0, "type": "MemberExpression", "type": "MemberExpression" }, "operator": "/", "right": { "commentStart": 1670, "computed": true, "end": 0, "object": { "commentStart": 1670, "end": 0, "name": "xs", "start": 0, "type": "Identifier", "type": "Identifier" }, "property": { "commentStart": 1673, "end": 0, "name": "i", "start": 0, "type": "Identifier", "type": "Identifier" }, "start": 0, "type": "MemberExpression", "type": "MemberExpression" }, "start": 0, "type": "BinaryExpression", "type": "BinaryExpression" } ], "callee": { "abs_path": false, "commentStart": 1657, "end": 0, "name": { "commentStart": 1657, "end": 0, "name": "atan", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name" }, "commentStart": 1657, "end": 0, "start": 0, "type": "CallExpression", "type": "CallExpression" } ], "callee": { "abs_path": false, "commentStart": 1647, "end": 0, "name": { "commentStart": 1647, "end": 0, "name": "toDegrees", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name" }, "commentStart": 1647, "end": 0, "start": 0, "type": "CallExpression", "type": "CallExpression" }, "start": 0, "type": "BinaryExpression", "type": "BinaryExpression" } ], "callee": { "abs_path": false, "commentStart": 1623, "end": 0, "name": { "commentStart": 1623, "end": 0, "name": "toRadians", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name" }, "commentStart": 1623, "end": 0, "start": 0, "type": "CallExpression", "type": "CallExpression" } ], "callee": { "abs_path": false, "commentStart": 1619, "end": 0, "name": { "commentStart": 1619, "end": 0, "name": "cos", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name" }, "commentStart": 1619, "end": 0, "start": 0, "type": "CallExpression", "type": "CallExpression" }, "start": 0, "type": "BinaryExpression", "type": "BinaryExpression" }, "start": 0, "type": "VariableDeclarator" }, "end": 0, "kind": "const", "start": 0, "type": "VariableDeclaration", "type": "VariableDeclaration" }, { "commentStart": 1682, "declaration": { "commentStart": 1682, "end": 0, "id": { "commentStart": 1682, "end": 0, "name": "y", "start": 0, "type": "Identifier" }, "init": { "commentStart": 1686, "end": 0, "left": { "argument": { "commentStart": 1687, "computed": true, "end": 0, "object": { "commentStart": 1687, "end": 0, "name": "rs", "start": 0, "type": "Identifier", "type": "Identifier" }, "property": { "commentStart": 1690, "end": 0, "name": "i", "start": 0, "type": "Identifier", "type": "Identifier" }, "start": 0, "type": "MemberExpression", "type": "MemberExpression" }, "commentStart": 1686, "end": 0, "operator": "-", "start": 0, "type": "UnaryExpression", "type": "UnaryExpression" }, "operator": "*", "right": { "arguments": [ { "arguments": [ { "commentStart": 1709, "end": 0, "left": { "argument": { "abs_path": false, "commentStart": 1710, "end": 0, "name": { "commentStart": 1710, "end": 0, "name": "toothAngle", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name", "type": "Name" }, "commentStart": 1709, "end": 0, "operator": "-", "start": 0, "type": "UnaryExpression", "type": "UnaryExpression" }, "operator": "+", "right": { "arguments": [ { "arguments": [ { "commentStart": 1738, "end": 0, "left": { "commentStart": 1738, "computed": true, "end": 0, "object": { "commentStart": 1738, "end": 0, "name": "ys", "start": 0, "type": "Identifier", "type": "Identifier" }, "property": { "commentStart": 1741, "end": 0, "name": "i", "start": 0, "type": "Identifier", "type": "Identifier" }, "start": 0, "type": "MemberExpression", "type": "MemberExpression" }, "operator": "/", "right": { "commentStart": 1746, "computed": true, "end": 0, "object": { "commentStart": 1746, "end": 0, "name": "xs", "start": 0, "type": "Identifier", "type": "Identifier" }, "property": { "commentStart": 1749, "end": 0, "name": "i", "start": 0, "type": "Identifier", "type": "Identifier" }, "start": 0, "type": "MemberExpression", "type": "MemberExpression" }, "start": 0, "type": "BinaryExpression", "type": "BinaryExpression" } ], "callee": { "abs_path": false, "commentStart": 1733, "end": 0, "name": { "commentStart": 1733, "end": 0, "name": "atan", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name" }, "commentStart": 1733, "end": 0, "start": 0, "type": "CallExpression", "type": "CallExpression" } ], "callee": { "abs_path": false, "commentStart": 1723, "end": 0, "name": { "commentStart": 1723, "end": 0, "name": "toDegrees", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name" }, "commentStart": 1723, "end": 0, "start": 0, "type": "CallExpression", "type": "CallExpression" }, "start": 0, "type": "BinaryExpression", "type": "BinaryExpression" } ], "callee": { "abs_path": false, "commentStart": 1699, "end": 0, "name": { "commentStart": 1699, "end": 0, "name": "toRadians", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name" }, "commentStart": 1699, "end": 0, "start": 0, "type": "CallExpression", "type": "CallExpression" } ], "callee": { "abs_path": false, "commentStart": 1695, "end": 0, "name": { "commentStart": 1695, "end": 0, "name": "sin", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name" }, "commentStart": 1695, "end": 0, "start": 0, "type": "CallExpression", "type": "CallExpression" }, "start": 0, "type": "BinaryExpression", "type": "BinaryExpression" }, "start": 0, "type": "VariableDeclarator" }, "end": 0, "kind": "const", "start": 0, "type": "VariableDeclaration", "type": "VariableDeclaration" }, { "argument": { "arguments": [ { "type": "LabeledArg", "label": { "commentStart": 1774, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { "commentStart": 1788, "elements": [ { "abs_path": false, "commentStart": 1789, "end": 0, "name": { "commentStart": 1789, "end": 0, "name": "x", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name", "type": "Name" }, { "abs_path": false, "commentStart": 1792, "end": 0, "name": { "commentStart": 1792, "end": 0, "name": "y", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name", "type": "Name" } ], "end": 0, "start": 0, "type": "ArrayExpression", "type": "ArrayExpression" } } ], "callee": { "abs_path": false, "commentStart": 1765, "end": 0, "name": { "commentStart": 1765, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name" }, "commentStart": 1765, "end": 0, "start": 0, "type": "CallExpressionKw", "type": "CallExpressionKw", "unlabeled": { "abs_path": false, "commentStart": 1770, "end": 0, "name": { "commentStart": 1770, "end": 0, "name": "sg", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name", "type": "Name" } }, "commentStart": 1758, "end": 0, "start": 0, "type": "ReturnStatement", "type": "ReturnStatement" } ], "commentStart": 1603, "end": 0, "start": 0 }, "commentStart": 1595, "end": 0, "params": [ { "type": "Parameter", "identifier": { "commentStart": 1596, "end": 0, "name": "i", "start": 0, "type": "Identifier" } }, { "type": "Parameter", "identifier": { "commentStart": 1599, "end": 0, "name": "sg", "start": 0, "type": "Identifier" } } ], "start": 0, "type": "FunctionExpression", "type": "FunctionExpression" }, "start": 0, "type": "VariableDeclarator" }, "end": 0, "kind": "fn", "start": 0, "type": "VariableDeclaration", "type": "VariableDeclaration" }, { "commentStart": 1797, "declaration": { "commentStart": 1818, "end": 0, "id": { "commentStart": 1818, "end": 0, "name": "start", "start": 0, "type": "Identifier" }, "init": { "body": [ { "arguments": [ { "abs_path": false, "commentStart": 1840, "end": 0, "name": { "commentStart": 1840, "end": 0, "name": "XY", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name", "type": "Name" } ], "callee": { "abs_path": false, "commentStart": 1826, "end": 0, "name": { "commentStart": 1826, "end": 0, "name": "startSketchOn", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name" }, "commentStart": 1826, "end": 0, "start": 0, "type": "CallExpression", "type": "CallExpression" }, { "arguments": [ { "commentStart": 1864, "elements": [ { "commentStart": 1865, "computed": false, "end": 0, "object": { "commentStart": 1865, "end": 0, "name": "xs", "start": 0, "type": "Identifier", "type": "Identifier" }, "property": { "commentStart": 1868, "end": 0, "raw": "101", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 101.0, "suffix": "None" } }, "start": 0, "type": "MemberExpression", "type": "MemberExpression" }, { "commentStart": 1874, "computed": false, "end": 0, "object": { "commentStart": 1874, "end": 0, "name": "ys", "start": 0, "type": "Identifier", "type": "Identifier" }, "property": { "commentStart": 1877, "end": 0, "raw": "101", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 101.0, "suffix": "None" } }, "start": 0, "type": "MemberExpression", "type": "MemberExpression" } ], "end": 0, "start": 0, "type": "ArrayExpression", "type": "ArrayExpression" }, { "commentStart": 1884, "end": 0, "start": 0, "type": "PipeSubstitution", "type": "PipeSubstitution" } ], "callee": { "abs_path": false, "commentStart": 1849, "end": 0, "name": { "commentStart": 1849, "end": 0, "name": "startProfileAt", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name" }, "commentStart": 1849, "end": 0, "start": 0, "type": "CallExpression", "type": "CallExpression" } ], "commentStart": 1826, "end": 0, "start": 0, "type": "PipeExpression", "type": "PipeExpression" }, "start": 0, "type": "VariableDeclarator" }, "end": 0, "kind": "const", "preComments": [ "", "", "// Draw gear teeth" ], "start": 0, "type": "VariableDeclaration", "type": "VariableDeclaration" }, { "commentStart": 1887, "declaration": { "commentStart": 1887, "end": 0, "id": { "commentStart": 1887, "end": 0, "name": "teeth", "start": 0, "type": "Identifier" }, "init": { "body": [ { "arguments": [ { "commentStart": 1902, "end": 0, "endElement": { "commentStart": 1906, "end": 0, "raw": "100", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 100.0, "suffix": "None" } }, "endInclusive": true, "start": 0, "startElement": { "commentStart": 1903, "end": 0, "raw": "0", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 0.0, "suffix": "None" } }, "type": "ArrayRangeExpression", "type": "ArrayRangeExpression" }, { "abs_path": false, "commentStart": 1912, "end": 0, "name": { "commentStart": 1912, "end": 0, "name": "start", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name", "type": "Name" }, { "abs_path": false, "commentStart": 1919, "end": 0, "name": { "commentStart": 1919, "end": 0, "name": "leftInvolute", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name", "type": "Name" } ], "callee": { "abs_path": false, "commentStart": 1895, "end": 0, "name": { "commentStart": 1895, "end": 0, "name": "reduce", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name" }, "commentStart": 1895, "end": 0, "start": 0, "type": "CallExpression", "type": "CallExpression" }, { "arguments": [ { "commentStart": 1942, "end": 0, "properties": [ { "commentStart": 1951, "end": 0, "key": { "commentStart": 1951, "end": 0, "name": "angleStart", "start": 0, "type": "Identifier" }, "start": 0, "type": "ObjectProperty", "value": { "commentStart": 1964, "end": 0, "raw": "0", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 0.0, "suffix": "None" } } }, { "commentStart": 1974, "end": 0, "key": { "commentStart": 1974, "end": 0, "name": "angleEnd", "start": 0, "type": "Identifier" }, "start": 0, "type": "ObjectProperty", "value": { "abs_path": false, "commentStart": 1985, "end": 0, "name": { "commentStart": 1985, "end": 0, "name": "toothAngle", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name", "type": "Name" } }, { "commentStart": 2004, "end": 0, "key": { "commentStart": 2004, "end": 0, "name": "radius", "start": 0, "type": "Identifier" }, "start": 0, "type": "ObjectProperty", "value": { "commentStart": 2013, "end": 0, "left": { "abs_path": false, "commentStart": 2013, "end": 0, "name": { "commentStart": 2013, "end": 0, "name": "baseDiameter", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name", "type": "Name" }, "operator": "/", "right": { "commentStart": 2028, "end": 0, "raw": "2", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 2.0, "suffix": "None" } }, "start": 0, "type": "BinaryExpression", "type": "BinaryExpression" } } ], "start": 0, "type": "ObjectExpression", "type": "ObjectExpression" }, { "commentStart": 2038, "end": 0, "start": 0, "type": "PipeSubstitution", "type": "PipeSubstitution" } ], "callee": { "abs_path": false, "commentStart": 1938, "end": 0, "name": { "commentStart": 1938, "end": 0, "name": "arc", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name" }, "commentStart": 1938, "end": 0, "start": 0, "type": "CallExpression", "type": "CallExpression" }, { "arguments": [ { "commentStart": 2053, "end": 0, "endElement": { "commentStart": 2057, "end": 0, "raw": "101", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 101.0, "suffix": "None" } }, "endInclusive": true, "start": 0, "startElement": { "commentStart": 2054, "end": 0, "raw": "1", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 1.0, "suffix": "None" } }, "type": "ArrayRangeExpression", "type": "ArrayRangeExpression" }, { "commentStart": 2063, "end": 0, "start": 0, "type": "PipeSubstitution", "type": "PipeSubstitution" }, { "abs_path": false, "commentStart": 2066, "end": 0, "name": { "commentStart": 2066, "end": 0, "name": "rightInvolute", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name", "type": "Name" } ], "callee": { "abs_path": false, "commentStart": 2046, "end": 0, "name": { "commentStart": 2046, "end": 0, "name": "reduce", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name" }, "commentStart": 2046, "end": 0, "start": 0, "type": "CallExpression", "type": "CallExpression" }, { "arguments": [], "callee": { "abs_path": false, "commentStart": 2086, "end": 0, "name": { "commentStart": 2086, "end": 0, "name": "close", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name" }, "commentStart": 2086, "end": 0, "start": 0, "type": "CallExpression", "type": "CallExpression" }, { "arguments": [ { "type": "LabeledArg", "label": { "commentStart": 2107, "end": 0, "name": "length", "start": 0, "type": "Identifier" }, "arg": { "abs_path": false, "commentStart": 2116, "end": 0, "name": { "commentStart": 2116, "end": 0, "name": "gearHeight", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name", "type": "Name" } } ], "callee": { "abs_path": false, "commentStart": 2099, "end": 0, "name": { "commentStart": 2099, "end": 0, "name": "extrude", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name" }, "commentStart": 2099, "end": 0, "start": 0, "type": "CallExpressionKw", "type": "CallExpressionKw", "unlabeled": null }, { "arguments": [ { "type": "LabeledArg", "label": { "commentStart": 2159, "end": 0, "name": "axis", "start": 0, "type": "Identifier" }, "arg": { "commentStart": 2166, "elements": [ { "commentStart": 2167, "end": 0, "raw": "0", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 0.0, "suffix": "None" } }, { "commentStart": 2170, "end": 0, "raw": "0", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 0.0, "suffix": "None" } }, { "commentStart": 2173, "end": 0, "raw": "1", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 1.0, "suffix": "None" } } ], "end": 0, "start": 0, "type": "ArrayExpression", "type": "ArrayExpression" } }, { "type": "LabeledArg", "label": { "commentStart": 2184, "end": 0, "name": "center", "start": 0, "type": "Identifier" }, "arg": { "commentStart": 2193, "elements": [ { "commentStart": 2194, "end": 0, "raw": "0", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 0.0, "suffix": "None" } }, { "commentStart": 2197, "end": 0, "raw": "0", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 0.0, "suffix": "None" } }, { "commentStart": 2200, "end": 0, "raw": "0", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 0.0, "suffix": "None" } } ], "end": 0, "start": 0, "type": "ArrayExpression", "type": "ArrayExpression" } }, { "type": "LabeledArg", "label": { "commentStart": 2211, "end": 0, "name": "instances", "start": 0, "type": "Identifier" }, "arg": { "abs_path": false, "commentStart": 2223, "end": 0, "name": { "commentStart": 2223, "end": 0, "name": "nTeeth", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name", "type": "Name" } }, { "type": "LabeledArg", "label": { "commentStart": 2238, "end": 0, "name": "arcDegrees", "start": 0, "type": "Identifier" }, "arg": { "commentStart": 2251, "end": 0, "raw": "360", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 360.0, "suffix": "None" } } }, { "type": "LabeledArg", "label": { "commentStart": 2263, "end": 0, "name": "rotateDuplicates", "start": 0, "type": "Identifier" }, "arg": { "commentStart": 2282, "end": 0, "raw": "true", "start": 0, "type": "Literal", "type": "Literal", "value": true } } ], "callee": { "abs_path": false, "commentStart": 2133, "end": 0, "name": { "commentStart": 2133, "end": 0, "name": "patternCircular3d", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name" }, "commentStart": 2133, "end": 0, "start": 0, "type": "CallExpressionKw", "type": "CallExpressionKw", "unlabeled": null } ], "commentStart": 1895, "end": 0, "nonCodeMeta": { "nonCodeNodes": { "5": [ { "commentStart": 2294, "end": 0, "start": 0, "type": "NonCodeNode", "value": { "type": "newLineBlockComment", "value": "Define the constants of the keyway and the bore hole", "style": "line" } } ] }, "startNodes": [] }, "start": 0, "type": "PipeExpression", "type": "PipeExpression" }, "start": 0, "type": "VariableDeclarator" }, "end": 0, "kind": "const", "start": 0, "type": "VariableDeclaration", "type": "VariableDeclaration" }, { "commentStart": 2352, "declaration": { "commentStart": 2352, "end": 0, "id": { "commentStart": 2352, "end": 0, "name": "keywayWidth", "start": 0, "type": "Identifier" }, "init": { "commentStart": 2366, "end": 0, "raw": "0.250", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 0.25, "suffix": "None" } }, "start": 0, "type": "VariableDeclarator" }, "end": 0, "kind": "const", "start": 0, "type": "VariableDeclaration", "type": "VariableDeclaration" }, { "commentStart": 2372, "declaration": { "commentStart": 2372, "end": 0, "id": { "commentStart": 2372, "end": 0, "name": "keywayDepth", "start": 0, "type": "Identifier" }, "init": { "commentStart": 2386, "end": 0, "left": { "abs_path": false, "commentStart": 2386, "end": 0, "name": { "commentStart": 2386, "end": 0, "name": "keywayWidth", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name", "type": "Name" }, "operator": "/", "right": { "commentStart": 2400, "end": 0, "raw": "2", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 2.0, "suffix": "None" } }, "start": 0, "type": "BinaryExpression", "type": "BinaryExpression" }, "start": 0, "type": "VariableDeclarator" }, "end": 0, "kind": "const", "start": 0, "type": "VariableDeclaration", "type": "VariableDeclaration" }, { "commentStart": 2402, "declaration": { "commentStart": 2402, "end": 0, "id": { "commentStart": 2402, "end": 0, "name": "holeDiam", "start": 0, "type": "Identifier" }, "init": { "commentStart": 2413, "end": 0, "raw": "2", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 2.0, "suffix": "None" } }, "start": 0, "type": "VariableDeclarator" }, "end": 0, "kind": "const", "start": 0, "type": "VariableDeclaration", "type": "VariableDeclaration" }, { "commentStart": 2415, "declaration": { "commentStart": 2415, "end": 0, "id": { "commentStart": 2415, "end": 0, "name": "holeRadius", "start": 0, "type": "Identifier" }, "init": { "commentStart": 2428, "end": 0, "raw": "1", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 1.0, "suffix": "None" } }, "start": 0, "type": "VariableDeclarator" }, "end": 0, "kind": "const", "start": 0, "type": "VariableDeclaration", "type": "VariableDeclaration" }, { "commentStart": 2430, "declaration": { "commentStart": 2430, "end": 0, "id": { "commentStart": 2430, "end": 0, "name": "startAngle", "start": 0, "type": "Identifier" }, "init": { "arguments": [ { "commentStart": 2448, "end": 0, "left": { "commentStart": 2448, "end": 0, "left": { "abs_path": false, "commentStart": 2448, "end": 0, "name": { "commentStart": 2448, "end": 0, "name": "keywayWidth", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name", "type": "Name" }, "operator": "/", "right": { "commentStart": 2462, "end": 0, "raw": "2", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 2.0, "suffix": "None" } }, "start": 0, "type": "BinaryExpression", "type": "BinaryExpression" }, "operator": "/", "right": { "abs_path": false, "commentStart": 2466, "end": 0, "name": { "commentStart": 2466, "end": 0, "name": "holeRadius", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name", "type": "Name" }, "start": 0, "type": "BinaryExpression", "type": "BinaryExpression" } ], "callee": { "abs_path": false, "commentStart": 2443, "end": 0, "name": { "commentStart": 2443, "end": 0, "name": "asin", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name" }, "commentStart": 2443, "end": 0, "start": 0, "type": "CallExpression", "type": "CallExpression" }, "start": 0, "type": "VariableDeclarator" }, "end": 0, "kind": "const", "start": 0, "type": "VariableDeclaration", "type": "VariableDeclaration" }, { "commentStart": 2477, "declaration": { "commentStart": 2528, "end": 0, "id": { "commentStart": 2528, "end": 0, "name": "keyWay", "start": 0, "type": "Identifier" }, "init": { "body": [ { "arguments": [ { "abs_path": false, "commentStart": 2551, "end": 0, "name": { "commentStart": 2551, "end": 0, "name": "body", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name", "type": "Name" }, { "commentStart": 2557, "end": 0, "raw": "'END'", "start": 0, "type": "Literal", "type": "Literal", "value": "END" } ], "callee": { "abs_path": false, "commentStart": 2537, "end": 0, "name": { "commentStart": 2537, "end": 0, "name": "startSketchOn", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name" }, "commentStart": 2537, "end": 0, "start": 0, "type": "CallExpression", "type": "CallExpression" }, { "arguments": [ { "commentStart": 2584, "elements": [ { "commentStart": 2593, "end": 0, "left": { "abs_path": false, "commentStart": 2593, "end": 0, "name": { "commentStart": 2593, "end": 0, "name": "holeRadius", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name", "type": "Name" }, "operator": "*", "right": { "arguments": [ { "abs_path": false, "commentStart": 2610, "end": 0, "name": { "commentStart": 2610, "end": 0, "name": "startAngle", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name", "type": "Name" } ], "callee": { "abs_path": false, "commentStart": 2606, "end": 0, "name": { "commentStart": 2606, "end": 0, "name": "cos", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name" }, "commentStart": 2606, "end": 0, "start": 0, "type": "CallExpression", "type": "CallExpression" }, "start": 0, "type": "BinaryExpression", "type": "BinaryExpression" }, { "commentStart": 2630, "end": 0, "left": { "abs_path": false, "commentStart": 2630, "end": 0, "name": { "commentStart": 2630, "end": 0, "name": "holeRadius", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name", "type": "Name" }, "operator": "*", "right": { "arguments": [ { "abs_path": false, "commentStart": 2647, "end": 0, "name": { "commentStart": 2647, "end": 0, "name": "startAngle", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name", "type": "Name" } ], "callee": { "abs_path": false, "commentStart": 2643, "end": 0, "name": { "commentStart": 2643, "end": 0, "name": "sin", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name" }, "commentStart": 2643, "end": 0, "start": 0, "type": "CallExpression", "type": "CallExpression" }, "start": 0, "type": "BinaryExpression", "type": "BinaryExpression" } ], "end": 0, "start": 0, "type": "ArrayExpression", "type": "ArrayExpression" }, { "commentStart": 2667, "end": 0, "start": 0, "type": "PipeSubstitution", "type": "PipeSubstitution" } ], "callee": { "abs_path": false, "commentStart": 2569, "end": 0, "name": { "commentStart": 2569, "end": 0, "name": "startProfileAt", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name" }, "commentStart": 2569, "end": 0, "start": 0, "type": "CallExpression", "type": "CallExpression" }, { "arguments": [ { "type": "LabeledArg", "label": { "commentStart": 2681, "end": 0, "name": "length", "start": 0, "type": "Identifier" }, "arg": { "abs_path": false, "commentStart": 2690, "end": 0, "name": { "commentStart": 2690, "end": 0, "name": "keywayDepth", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name", "type": "Name" } } ], "callee": { "abs_path": false, "commentStart": 2675, "end": 0, "name": { "commentStart": 2675, "end": 0, "name": "xLine", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name" }, "commentStart": 2675, "end": 0, "start": 0, "type": "CallExpressionKw", "type": "CallExpressionKw", "unlabeled": null }, { "arguments": [ { "type": "LabeledArg", "label": { "commentStart": 2714, "end": 0, "name": "length", "start": 0, "type": "Identifier" }, "arg": { "argument": { "abs_path": false, "commentStart": 2724, "end": 0, "name": { "commentStart": 2724, "end": 0, "name": "keywayWidth", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name", "type": "Name" }, "commentStart": 2723, "end": 0, "operator": "-", "start": 0, "type": "UnaryExpression", "type": "UnaryExpression" } } ], "callee": { "abs_path": false, "commentStart": 2708, "end": 0, "name": { "commentStart": 2708, "end": 0, "name": "yLine", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name" }, "commentStart": 2708, "end": 0, "start": 0, "type": "CallExpressionKw", "type": "CallExpressionKw", "unlabeled": null }, { "arguments": [ { "type": "LabeledArg", "label": { "commentStart": 2748, "end": 0, "name": "length", "start": 0, "type": "Identifier" }, "arg": { "argument": { "abs_path": false, "commentStart": 2758, "end": 0, "name": { "commentStart": 2758, "end": 0, "name": "keywayDepth", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name", "type": "Name" }, "commentStart": 2757, "end": 0, "operator": "-", "start": 0, "type": "UnaryExpression", "type": "UnaryExpression" } } ], "callee": { "abs_path": false, "commentStart": 2742, "end": 0, "name": { "commentStart": 2742, "end": 0, "name": "xLine", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name" }, "commentStart": 2742, "end": 0, "start": 0, "type": "CallExpressionKw", "type": "CallExpressionKw", "unlabeled": null }, { "arguments": [ { "commentStart": 2780, "end": 0, "properties": [ { "commentStart": 2789, "end": 0, "key": { "commentStart": 2789, "end": 0, "name": "angleEnd", "start": 0, "type": "Identifier" }, "start": 0, "type": "ObjectProperty", "value": { "commentStart": 2800, "end": 0, "raw": "180", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 180.0, "suffix": "None" } } }, { "commentStart": 2812, "end": 0, "key": { "commentStart": 2812, "end": 0, "name": "angleStart", "start": 0, "type": "Identifier" }, "start": 0, "type": "ObjectProperty", "value": { "commentStart": 2825, "end": 0, "left": { "commentStart": 2825, "end": 0, "left": { "commentStart": 2825, "end": 0, "left": { "commentStart": 2825, "end": 0, "left": { "argument": { "commentStart": 2826, "end": 0, "raw": "1", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 1.0, "suffix": "None" } }, "commentStart": 2825, "end": 0, "operator": "-", "start": 0, "type": "UnaryExpression", "type": "UnaryExpression" }, "operator": "*", "right": { "commentStart": 2830, "end": 0, "raw": "180", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 180.0, "suffix": "None" } }, "start": 0, "type": "BinaryExpression", "type": "BinaryExpression" }, "operator": "/", "right": { "abs_path": false, "commentStart": 2836, "end": 0, "name": { "commentStart": 2836, "end": 0, "name": "PI", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name", "type": "Name" }, "start": 0, "type": "BinaryExpression", "type": "BinaryExpression" }, "operator": "*", "right": { "abs_path": false, "commentStart": 2841, "end": 0, "name": { "commentStart": 2841, "end": 0, "name": "startAngle", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name", "type": "Name" }, "start": 0, "type": "BinaryExpression", "type": "BinaryExpression" }, "operator": "+", "right": { "commentStart": 2854, "end": 0, "raw": "360", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 360.0, "suffix": "None" } }, "start": 0, "type": "BinaryExpression", "type": "BinaryExpression" } }, { "commentStart": 2866, "end": 0, "key": { "commentStart": 2866, "end": 0, "name": "radius", "start": 0, "type": "Identifier" }, "start": 0, "type": "ObjectProperty", "value": { "abs_path": false, "commentStart": 2875, "end": 0, "name": { "commentStart": 2875, "end": 0, "name": "holeRadius", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name", "type": "Name" } } ], "start": 0, "type": "ObjectExpression", "type": "ObjectExpression" }, { "commentStart": 2894, "end": 0, "start": 0, "type": "PipeSubstitution", "type": "PipeSubstitution" } ], "callee": { "abs_path": false, "commentStart": 2776, "end": 0, "name": { "commentStart": 2776, "end": 0, "name": "arc", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name" }, "commentStart": 2776, "end": 0, "start": 0, "type": "CallExpression", "type": "CallExpression" }, { "arguments": [ { "commentStart": 2906, "end": 0, "properties": [ { "commentStart": 2915, "end": 0, "key": { "commentStart": 2915, "end": 0, "name": "angleEnd", "start": 0, "type": "Identifier" }, "start": 0, "type": "ObjectProperty", "value": { "commentStart": 2926, "end": 0, "left": { "commentStart": 2926, "end": 0, "left": { "commentStart": 2926, "end": 0, "raw": "180", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 180.0, "suffix": "None" } }, "operator": "/", "right": { "abs_path": false, "commentStart": 2932, "end": 0, "name": { "commentStart": 2932, "end": 0, "name": "PI", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name", "type": "Name" }, "start": 0, "type": "BinaryExpression", "type": "BinaryExpression" }, "operator": "*", "right": { "abs_path": false, "commentStart": 2937, "end": 0, "name": { "commentStart": 2937, "end": 0, "name": "startAngle", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name", "type": "Name" }, "start": 0, "type": "BinaryExpression", "type": "BinaryExpression" } }, { "commentStart": 2956, "end": 0, "key": { "commentStart": 2956, "end": 0, "name": "angleStart", "start": 0, "type": "Identifier" }, "start": 0, "type": "ObjectProperty", "value": { "commentStart": 2969, "end": 0, "raw": "180", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 180.0, "suffix": "None" } } }, { "commentStart": 2981, "end": 0, "key": { "commentStart": 2981, "end": 0, "name": "radius", "start": 0, "type": "Identifier" }, "start": 0, "type": "ObjectProperty", "value": { "abs_path": false, "commentStart": 2990, "end": 0, "name": { "commentStart": 2990, "end": 0, "name": "holeRadius", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name", "type": "Name" } } ], "start": 0, "type": "ObjectExpression", "type": "ObjectExpression" }, { "commentStart": 3009, "end": 0, "start": 0, "type": "PipeSubstitution", "type": "PipeSubstitution" } ], "callee": { "abs_path": false, "commentStart": 2902, "end": 0, "name": { "commentStart": 2902, "end": 0, "name": "arc", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name" }, "commentStart": 2902, "end": 0, "start": 0, "type": "CallExpression", "type": "CallExpression" }, { "arguments": [], "callee": { "abs_path": false, "commentStart": 3017, "end": 0, "name": { "commentStart": 3017, "end": 0, "name": "close", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name" }, "commentStart": 3017, "end": 0, "start": 0, "type": "CallExpression", "type": "CallExpression" }, { "arguments": [ { "type": "LabeledArg", "label": { "commentStart": 3038, "end": 0, "name": "length", "start": 0, "type": "Identifier" }, "arg": { "argument": { "abs_path": false, "commentStart": 3048, "end": 0, "name": { "commentStart": 3048, "end": 0, "name": "gearHeight", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name", "type": "Name" }, "commentStart": 3047, "end": 0, "operator": "-", "start": 0, "type": "UnaryExpression", "type": "UnaryExpression" } } ], "callee": { "abs_path": false, "commentStart": 3030, "end": 0, "name": { "commentStart": 3030, "end": 0, "name": "extrude", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name" }, "commentStart": 3030, "end": 0, "start": 0, "type": "CallExpressionKw", "type": "CallExpressionKw", "unlabeled": null } ], "commentStart": 2537, "end": 0, "start": 0, "type": "PipeExpression", "type": "PipeExpression" }, "start": 0, "type": "VariableDeclarator" }, "end": 0, "kind": "const", "preComments": [ "", "", "// Sketch the keyway and center hole and extrude" ], "start": 0, "type": "VariableDeclaration", "type": "VariableDeclaration" } ], "commentStart": 0, "end": 0, "innerAttrs": [ { "commentStart": 0, "end": 0, "name": { "commentStart": 440, "end": 0, "name": "settings", "start": 0, "type": "Identifier" }, "preComments": [ "// Spur Gear", "// A rotating machine part having cut teeth or, in the case of a cogwheel, inserted teeth (called cogs), which mesh with another toothed part to transmit torque. Geared devices can change the speed, torque, and direction of a power source. The two elements that define a gear are its circular shape and the teeth that are integrated into its outer edge, which are designed to fit into the teeth of another gear.", "", "", "// Set units" ], "properties": [ { "commentStart": 449, "end": 0, "key": { "commentStart": 449, "end": 0, "name": "defaultLengthUnit", "start": 0, "type": "Identifier" }, "start": 0, "type": "ObjectProperty", "value": { "abs_path": false, "commentStart": 469, "end": 0, "name": { "commentStart": 469, "end": 0, "name": "in", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name", "type": "Name" } } ], "start": 0, "type": "Annotation" } ], "nonCodeMeta": { "nonCodeNodes": { "13": [ { "commentStart": 1203, "end": 0, "start": 0, "type": "NonCodeNode", "value": { "type": "newLine" } } ], "15": [ { "commentStart": 1406, "end": 0, "start": 0, "type": "NonCodeNode", "value": { "type": "newLine" } } ], "17": [ { "commentStart": 1577, "end": 0, "start": 0, "type": "NonCodeNode", "value": { "type": "newLine" } } ] }, "startNodes": [ { "commentStart": 472, "end": 0, "start": 0, "type": "NonCodeNode", "value": { "type": "newLine" } } ] }, "start": 0 } }