--- source: kcl-lib/src/simulation_tests.rs description: Result of parsing keyboard.kcl --- { "Ok": { "body": [ { "commentStart": 109, "declaration": { "commentStart": 131, "end": 0, "id": { "commentStart": 131, "end": 0, "name": "baseColor", "start": 0, "type": "Identifier" }, "init": { "commentStart": 143, "end": 0, "raw": "\"#0f0f0f\"", "start": 0, "type": "Literal", "type": "Literal", "value": "#0f0f0f" }, "start": 0, "type": "VariableDeclarator" }, "end": 0, "kind": "const", "preComments": [ "// Define constants" ], "start": 0, "type": "VariableDeclaration", "type": "VariableDeclaration" }, { "commentStart": 153, "declaration": { "commentStart": 153, "end": 0, "id": { "commentStart": 153, "end": 0, "name": "highlightColor1", "start": 0, "type": "Identifier" }, "init": { "commentStart": 171, "end": 0, "raw": "\"#b0b0b0\"", "start": 0, "type": "Literal", "type": "Literal", "value": "#b0b0b0" }, "start": 0, "type": "VariableDeclarator" }, "end": 0, "kind": "const", "start": 0, "type": "VariableDeclaration", "type": "VariableDeclaration" }, { "commentStart": 181, "declaration": { "commentStart": 181, "end": 0, "id": { "commentStart": 181, "end": 0, "name": "highlightColor2", "start": 0, "type": "Identifier" }, "init": { "commentStart": 199, "end": 0, "raw": "\"#23af93\"", "start": 0, "type": "Literal", "type": "Literal", "value": "#23af93" }, "start": 0, "type": "VariableDeclarator" }, "end": 0, "kind": "const", "start": 0, "type": "VariableDeclaration", "type": "VariableDeclaration" }, { "commentStart": 209, "declaration": { "commentStart": 209, "end": 0, "id": { "commentStart": 209, "end": 0, "name": "keyHeight", "start": 0, "type": "Identifier" }, "init": { "commentStart": 221, "end": 0, "raw": "0.8", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 0.8, "suffix": "None" } }, "start": 0, "type": "VariableDeclarator" }, "end": 0, "kind": "const", "start": 0, "type": "VariableDeclaration", "type": "VariableDeclaration" }, { "commentStart": 225, "declaration": { "commentStart": 225, "end": 0, "id": { "commentStart": 225, "end": 0, "name": "keyDepth", "start": 0, "type": "Identifier" }, "init": { "commentStart": 236, "end": 0, "raw": "0.1", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 0.1, "suffix": "None" } }, "start": 0, "type": "VariableDeclarator" }, "end": 0, "kind": "const", "start": 0, "type": "VariableDeclaration", "type": "VariableDeclaration" }, { "commentStart": 240, "declaration": { "commentStart": 240, "end": 0, "id": { "commentStart": 240, "end": 0, "name": "spacing", "start": 0, "type": "Identifier" }, "init": { "commentStart": 250, "end": 0, "raw": "0.1", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 0.1, "suffix": "None" } }, "start": 0, "type": "VariableDeclarator" }, "end": 0, "kind": "const", "start": 0, "type": "VariableDeclaration", "type": "VariableDeclaration" }, { "commentStart": 254, "declaration": { "commentStart": 254, "end": 0, "id": { "commentStart": 254, "end": 0, "name": "row1", "start": 0, "type": "Identifier" }, "init": { "commentStart": 261, "end": 0, "left": { "abs_path": false, "commentStart": 261, "end": 0, "name": { "commentStart": 261, "end": 0, "name": "spacing", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name", "type": "Name" }, "operator": "*", "right": { "commentStart": 271, "end": 0, "raw": "3", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 3.0, "suffix": "None" } }, "start": 0, "type": "BinaryExpression", "type": "BinaryExpression" }, "start": 0, "type": "VariableDeclarator" }, "end": 0, "kind": "const", "start": 0, "type": "VariableDeclaration", "type": "VariableDeclaration" }, { "commentStart": 273, "declaration": { "commentStart": 273, "end": 0, "id": { "commentStart": 273, "end": 0, "name": "row2", "start": 0, "type": "Identifier" }, "init": { "commentStart": 280, "end": 0, "left": { "commentStart": 280, "end": 0, "left": { "abs_path": false, "commentStart": 280, "end": 0, "name": { "commentStart": 280, "end": 0, "name": "row1", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name", "type": "Name" }, "operator": "+", "right": { "abs_path": false, "commentStart": 287, "end": 0, "name": { "commentStart": 287, "end": 0, "name": "keyHeight", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name", "type": "Name" }, "start": 0, "type": "BinaryExpression", "type": "BinaryExpression" }, "operator": "+", "right": { "abs_path": false, "commentStart": 299, "end": 0, "name": { "commentStart": 299, "end": 0, "name": "spacing", "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": 307, "declaration": { "commentStart": 307, "end": 0, "id": { "commentStart": 307, "end": 0, "name": "row3", "start": 0, "type": "Identifier" }, "init": { "commentStart": 314, "end": 0, "left": { "commentStart": 314, "end": 0, "left": { "abs_path": false, "commentStart": 314, "end": 0, "name": { "commentStart": 314, "end": 0, "name": "row2", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name", "type": "Name" }, "operator": "+", "right": { "abs_path": false, "commentStart": 321, "end": 0, "name": { "commentStart": 321, "end": 0, "name": "keyHeight", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name", "type": "Name" }, "start": 0, "type": "BinaryExpression", "type": "BinaryExpression" }, "operator": "+", "right": { "abs_path": false, "commentStart": 333, "end": 0, "name": { "commentStart": 333, "end": 0, "name": "spacing", "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": 341, "declaration": { "commentStart": 341, "end": 0, "id": { "commentStart": 341, "end": 0, "name": "row4", "start": 0, "type": "Identifier" }, "init": { "commentStart": 348, "end": 0, "left": { "commentStart": 348, "end": 0, "left": { "abs_path": false, "commentStart": 348, "end": 0, "name": { "commentStart": 348, "end": 0, "name": "row3", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name", "type": "Name" }, "operator": "+", "right": { "abs_path": false, "commentStart": 355, "end": 0, "name": { "commentStart": 355, "end": 0, "name": "keyHeight", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name", "type": "Name" }, "start": 0, "type": "BinaryExpression", "type": "BinaryExpression" }, "operator": "+", "right": { "abs_path": false, "commentStart": 367, "end": 0, "name": { "commentStart": 367, "end": 0, "name": "spacing", "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": 375, "declaration": { "commentStart": 375, "end": 0, "id": { "commentStart": 375, "end": 0, "name": "row5", "start": 0, "type": "Identifier" }, "init": { "commentStart": 382, "end": 0, "left": { "commentStart": 382, "end": 0, "left": { "abs_path": false, "commentStart": 382, "end": 0, "name": { "commentStart": 382, "end": 0, "name": "row4", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name", "type": "Name" }, "operator": "+", "right": { "abs_path": false, "commentStart": 389, "end": 0, "name": { "commentStart": 389, "end": 0, "name": "keyHeight", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name", "type": "Name" }, "start": 0, "type": "BinaryExpression", "type": "BinaryExpression" }, "operator": "+", "right": { "abs_path": false, "commentStart": 401, "end": 0, "name": { "commentStart": 401, "end": 0, "name": "spacing", "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": 409, "declaration": { "commentStart": 409, "end": 0, "id": { "commentStart": 409, "end": 0, "name": "row6", "start": 0, "type": "Identifier" }, "init": { "commentStart": 416, "end": 0, "left": { "commentStart": 416, "end": 0, "left": { "abs_path": false, "commentStart": 416, "end": 0, "name": { "commentStart": 416, "end": 0, "name": "row5", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name", "type": "Name" }, "operator": "+", "right": { "abs_path": false, "commentStart": 423, "end": 0, "name": { "commentStart": 423, "end": 0, "name": "keyHeight", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name", "type": "Name" }, "start": 0, "type": "BinaryExpression", "type": "BinaryExpression" }, "operator": "+", "right": { "abs_path": false, "commentStart": 435, "end": 0, "name": { "commentStart": 435, "end": 0, "name": "spacing", "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": 442, "declaration": { "commentStart": 519, "end": 0, "id": { "commentStart": 519, "end": 0, "name": "sketch001", "start": 0, "type": "Identifier" }, "init": { "body": [ { "arguments": [ { "abs_path": false, "commentStart": 545, "end": 0, "name": { "commentStart": 545, "end": 0, "name": "YZ", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name", "type": "Name" } ], "callee": { "abs_path": false, "commentStart": 531, "end": 0, "name": { "commentStart": 531, "end": 0, "name": "startSketchOn", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name" }, "commentStart": 531, "end": 0, "start": 0, "type": "CallExpression", "type": "CallExpression" }, { "arguments": [ { "commentStart": 569, "elements": [ { "commentStart": 570, "end": 0, "raw": "0", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 0.0, "suffix": "None" } }, { "commentStart": 573, "end": 0, "raw": "0", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 0.0, "suffix": "None" } } ], "end": 0, "start": 0, "type": "ArrayExpression", "type": "ArrayExpression" }, { "commentStart": 577, "end": 0, "start": 0, "type": "PipeSubstitution", "type": "PipeSubstitution" } ], "callee": { "abs_path": false, "commentStart": 554, "end": 0, "name": { "commentStart": 554, "end": 0, "name": "startProfileAt", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name" }, "commentStart": 554, "end": 0, "start": 0, "type": "CallExpression", "type": "CallExpression" }, { "arguments": [ { "type": "LabeledArg", "label": { "commentStart": 590, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { "commentStart": 596, "elements": [ { "argument": { "commentStart": 598, "end": 0, "raw": "0.14", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 0.14, "suffix": "None" } }, "commentStart": 597, "end": 0, "operator": "-", "start": 0, "type": "UnaryExpression", "type": "UnaryExpression" }, { "commentStart": 604, "end": 0, "raw": "0.68", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 0.68, "suffix": "None" } } ], "end": 0, "start": 0, "type": "ArrayExpression", "type": "ArrayExpression" } }, { "type": "LabeledArg", "label": { "commentStart": 611, "end": 0, "name": "tag", "start": 0, "type": "Identifier" }, "arg": { "commentStart": 617, "end": 0, "start": 0, "type": "TagDeclarator", "type": "TagDeclarator", "value": "seg01" } } ], "callee": { "abs_path": false, "commentStart": 585, "end": 0, "name": { "commentStart": 585, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name" }, "commentStart": 585, "end": 0, "start": 0, "type": "CallExpressionKw", "type": "CallExpressionKw", "unlabeled": null }, { "arguments": [ { "commentStart": 641, "elements": [ { "commentStart": 642, "end": 0, "raw": "7", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 7.0, "suffix": "None" } }, { "commentStart": 645, "end": 0, "left": { "commentStart": 645, "end": 0, "left": { "abs_path": false, "commentStart": 645, "end": 0, "name": { "commentStart": 645, "end": 0, "name": "row6", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name", "type": "Name" }, "operator": "+", "right": { "commentStart": 652, "end": 0, "left": { "commentStart": 652, "end": 0, "raw": "3", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 3.0, "suffix": "None" } }, "operator": "*", "right": { "abs_path": false, "commentStart": 656, "end": 0, "name": { "commentStart": 656, "end": 0, "name": "spacing", "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": { "abs_path": false, "commentStart": 666, "end": 0, "name": { "commentStart": 666, "end": 0, "name": "keyHeight", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name", "type": "Name" }, "start": 0, "type": "BinaryExpression", "type": "BinaryExpression" } ], "end": 0, "start": 0, "type": "ArrayExpression", "type": "ArrayExpression" }, { "commentStart": 678, "end": 0, "start": 0, "type": "PipeSubstitution", "type": "PipeSubstitution" }, { "commentStart": 681, "end": 0, "start": 0, "type": "TagDeclarator", "type": "TagDeclarator", "value": "seg02" } ], "callee": { "abs_path": false, "commentStart": 630, "end": 0, "name": { "commentStart": 630, "end": 0, "name": "angledLine", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name" }, "commentStart": 630, "end": 0, "start": 0, "type": "CallExpression", "type": "CallExpression" }, { "arguments": [ { "type": "LabeledArg", "label": { "commentStart": 699, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { "commentStart": 713, "elements": [ { "commentStart": 714, "end": 0, "raw": "5.13", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 5.13, "suffix": "None" } }, { "commentStart": 720, "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": 724, "end": 0, "name": "tag", "start": 0, "type": "Identifier" }, "arg": { "commentStart": 730, "end": 0, "start": 0, "type": "TagDeclarator", "type": "TagDeclarator", "value": "seg03" } } ], "callee": { "abs_path": false, "commentStart": 694, "end": 0, "name": { "commentStart": 694, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name" }, "commentStart": 694, "end": 0, "start": 0, "type": "CallExpressionKw", "type": "CallExpressionKw", "unlabeled": null }, { "arguments": [ { "type": "LabeledArg", "label": { "commentStart": 748, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { "commentStart": 762, "elements": [ { "arguments": [ { "commentStart": 777, "end": 0, "start": 0, "type": "PipeSubstitution", "type": "PipeSubstitution" } ], "callee": { "abs_path": false, "commentStart": 763, "end": 0, "name": { "commentStart": 763, "end": 0, "name": "profileStartX", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name" }, "commentStart": 763, "end": 0, "start": 0, "type": "CallExpression", "type": "CallExpression" }, { "arguments": [ { "commentStart": 795, "end": 0, "start": 0, "type": "PipeSubstitution", "type": "PipeSubstitution" } ], "callee": { "abs_path": false, "commentStart": 781, "end": 0, "name": { "commentStart": 781, "end": 0, "name": "profileStartY", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name" }, "commentStart": 781, "end": 0, "start": 0, "type": "CallExpression", "type": "CallExpression" } ], "end": 0, "start": 0, "type": "ArrayExpression", "type": "ArrayExpression" } }, { "type": "LabeledArg", "label": { "commentStart": 800, "end": 0, "name": "tag", "start": 0, "type": "Identifier" }, "arg": { "commentStart": 806, "end": 0, "start": 0, "type": "TagDeclarator", "type": "TagDeclarator", "value": "seg04" } } ], "callee": { "abs_path": false, "commentStart": 743, "end": 0, "name": { "commentStart": 743, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name" }, "commentStart": 743, "end": 0, "start": 0, "type": "CallExpressionKw", "type": "CallExpressionKw", "unlabeled": null }, { "arguments": [], "callee": { "abs_path": false, "commentStart": 819, "end": 0, "name": { "commentStart": 819, "end": 0, "name": "close", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name" }, "commentStart": 819, "end": 0, "start": 0, "type": "CallExpression", "type": "CallExpression" }, { "arguments": [ { "type": "LabeledArg", "label": { "commentStart": 840, "end": 0, "name": "length", "start": 0, "type": "Identifier" }, "arg": { "commentStart": 849, "end": 0, "raw": "13.6", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 13.6, "suffix": "None" } } } ], "callee": { "abs_path": false, "commentStart": 832, "end": 0, "name": { "commentStart": 832, "end": 0, "name": "extrude", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name" }, "commentStart": 832, "end": 0, "start": 0, "type": "CallExpressionKw", "type": "CallExpressionKw", "unlabeled": null }, { "arguments": [ { "type": "LabeledArg", "label": { "commentStart": 871, "end": 0, "name": "color", "start": 0, "type": "Identifier" }, "arg": { "abs_path": false, "commentStart": 879, "end": 0, "name": { "commentStart": 879, "end": 0, "name": "baseColor", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name", "type": "Name" } } ], "callee": { "abs_path": false, "commentStart": 860, "end": 0, "name": { "commentStart": 860, "end": 0, "name": "appearance", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name" }, "commentStart": 860, "end": 0, "start": 0, "type": "CallExpressionKw", "type": "CallExpressionKw", "unlabeled": null }, { "arguments": [ { "type": "LabeledArg", "label": { "commentStart": 910, "end": 0, "name": "radius", "start": 0, "type": "Identifier" }, "arg": { "commentStart": 919, "end": 0, "raw": ".6", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 0.6, "suffix": "None" } } }, { "type": "LabeledArg", "label": { "commentStart": 930, "end": 0, "name": "tags", "start": 0, "type": "Identifier" }, "arg": { "commentStart": 937, "elements": [ { "arguments": [ { "abs_path": false, "commentStart": 964, "end": 0, "name": { "commentStart": 964, "end": 0, "name": "seg01", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name", "type": "Name" } ], "callee": { "abs_path": false, "commentStart": 948, "end": 0, "name": { "commentStart": 948, "end": 0, "name": "getOppositeEdge", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name" }, "commentStart": 948, "end": 0, "start": 0, "type": "CallExpression", "type": "CallExpression" }, { "arguments": [ { "abs_path": false, "commentStart": 997, "end": 0, "name": { "commentStart": 997, "end": 0, "name": "seg03", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name", "type": "Name" } ], "callee": { "abs_path": false, "commentStart": 981, "end": 0, "name": { "commentStart": 981, "end": 0, "name": "getOppositeEdge", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name" }, "commentStart": 981, "end": 0, "start": 0, "type": "CallExpression", "type": "CallExpression" }, { "abs_path": false, "commentStart": 1014, "end": 0, "name": { "commentStart": 1014, "end": 0, "name": "seg01", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name", "type": "Name" }, { "abs_path": false, "commentStart": 1030, "end": 0, "name": { "commentStart": 1030, "end": 0, "name": "seg03", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name", "type": "Name" } ], "end": 0, "start": 0, "type": "ArrayExpression", "type": "ArrayExpression" } } ], "callee": { "abs_path": false, "commentStart": 895, "end": 0, "name": { "commentStart": 895, "end": 0, "name": "fillet", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name" }, "commentStart": 895, "end": 0, "start": 0, "type": "CallExpressionKw", "type": "CallExpressionKw", "unlabeled": null } ], "commentStart": 531, "end": 0, "nonCodeMeta": { "nonCodeNodes": { "9": [ { "commentStart": 1052, "end": 0, "start": 0, "type": "NonCodeNode", "value": { "type": "newLineBlockComment", "value": "Create a short cylindrical foot at each corner of the keyboard", "style": "line" } } ] }, "startNodes": [] }, "start": 0, "type": "PipeExpression", "type": "PipeExpression" }, "start": 0, "type": "VariableDeclarator" }, "end": 0, "kind": "const", "preComments": [ "", "", "// Sketch the side profile of the keyboard base and extrude to total width" ], "start": 0, "type": "VariableDeclaration", "type": "VariableDeclaration" }, { "commentStart": 1120, "declaration": { "commentStart": 1120, "end": 0, "id": { "commentStart": 1120, "end": 0, "name": "sketch003", "start": 0, "type": "Identifier" }, "init": { "arguments": [ { "abs_path": false, "commentStart": 1146, "end": 0, "name": { "commentStart": 1146, "end": 0, "name": "sketch001", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name", "type": "Name" }, { "abs_path": false, "commentStart": 1157, "end": 0, "name": { "commentStart": 1157, "end": 0, "name": "seg04", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name", "type": "Name" } ], "callee": { "abs_path": false, "commentStart": 1132, "end": 0, "name": { "commentStart": 1132, "end": 0, "name": "startSketchOn", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name" }, "commentStart": 1132, "end": 0, "start": 0, "type": "CallExpression", "type": "CallExpression" }, "start": 0, "type": "VariableDeclarator" }, "end": 0, "kind": "const", "start": 0, "type": "VariableDeclaration", "type": "VariableDeclaration" }, { "commentStart": 1164, "declaration": { "commentStart": 1164, "end": 0, "id": { "commentStart": 1164, "end": 0, "name": "profile001", "start": 0, "type": "Identifier" }, "init": { "arguments": [ { "type": "LabeledArg", "label": { "commentStart": 1195, "end": 0, "name": "center", "start": 0, "type": "Identifier" }, "arg": { "commentStart": 1204, "elements": [ { "commentStart": 1205, "end": 0, "raw": "0.75", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 0.75, "suffix": "None" } }, { "commentStart": 1211, "end": 0, "raw": "0.75", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 0.75, "suffix": "None" } } ], "end": 0, "start": 0, "type": "ArrayExpression", "type": "ArrayExpression" } }, { "type": "LabeledArg", "label": { "commentStart": 1218, "end": 0, "name": "radius", "start": 0, "type": "Identifier" }, "arg": { "commentStart": 1227, "end": 0, "raw": "0.4", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 0.4, "suffix": "None" } } } ], "callee": { "abs_path": false, "commentStart": 1177, "end": 0, "name": { "commentStart": 1177, "end": 0, "name": "circle", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name" }, "commentStart": 1177, "end": 0, "start": 0, "type": "CallExpressionKw", "type": "CallExpressionKw", "unlabeled": { "abs_path": false, "commentStart": 1184, "end": 0, "name": { "commentStart": 1184, "end": 0, "name": "sketch003", "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": 1232, "declaration": { "commentStart": 1232, "end": 0, "id": { "commentStart": 1232, "end": 0, "name": "profile003", "start": 0, "type": "Identifier" }, "init": { "arguments": [ { "type": "LabeledArg", "label": { "commentStart": 1263, "end": 0, "name": "center", "start": 0, "type": "Identifier" }, "arg": { "commentStart": 1272, "elements": [ { "commentStart": 1273, "end": 0, "raw": "4.4", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 4.4, "suffix": "None" } }, { "commentStart": 1278, "end": 0, "raw": "0.75", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 0.75, "suffix": "None" } } ], "end": 0, "start": 0, "type": "ArrayExpression", "type": "ArrayExpression" } }, { "type": "LabeledArg", "label": { "commentStart": 1285, "end": 0, "name": "radius", "start": 0, "type": "Identifier" }, "arg": { "commentStart": 1294, "end": 0, "raw": "0.4", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 0.4, "suffix": "None" } } } ], "callee": { "abs_path": false, "commentStart": 1245, "end": 0, "name": { "commentStart": 1245, "end": 0, "name": "circle", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name" }, "commentStart": 1245, "end": 0, "start": 0, "type": "CallExpressionKw", "type": "CallExpressionKw", "unlabeled": { "abs_path": false, "commentStart": 1252, "end": 0, "name": { "commentStart": 1252, "end": 0, "name": "sketch003", "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": 1299, "declaration": { "commentStart": 1299, "end": 0, "id": { "commentStart": 1299, "end": 0, "name": "profile004", "start": 0, "type": "Identifier" }, "init": { "arguments": [ { "type": "LabeledArg", "label": { "commentStart": 1330, "end": 0, "name": "center", "start": 0, "type": "Identifier" }, "arg": { "commentStart": 1339, "elements": [ { "commentStart": 1340, "end": 0, "raw": "0.73", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 0.73, "suffix": "None" } }, { "commentStart": 1346, "end": 0, "left": { "commentStart": 1346, "end": 0, "raw": "13.6", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 13.6, "suffix": "None" } }, "operator": "-", "right": { "commentStart": 1353, "end": 0, "raw": ".75", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 0.75, "suffix": "None" } }, "start": 0, "type": "BinaryExpression", "type": "BinaryExpression" } ], "end": 0, "start": 0, "type": "ArrayExpression", "type": "ArrayExpression" } }, { "type": "LabeledArg", "label": { "commentStart": 1359, "end": 0, "name": "radius", "start": 0, "type": "Identifier" }, "arg": { "commentStart": 1368, "end": 0, "raw": "0.4", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 0.4, "suffix": "None" } } } ], "callee": { "abs_path": false, "commentStart": 1312, "end": 0, "name": { "commentStart": 1312, "end": 0, "name": "circle", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name" }, "commentStart": 1312, "end": 0, "start": 0, "type": "CallExpressionKw", "type": "CallExpressionKw", "unlabeled": { "abs_path": false, "commentStart": 1319, "end": 0, "name": { "commentStart": 1319, "end": 0, "name": "sketch003", "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": 1373, "declaration": { "commentStart": 1373, "end": 0, "id": { "commentStart": 1373, "end": 0, "name": "profile005", "start": 0, "type": "Identifier" }, "init": { "arguments": [ { "type": "LabeledArg", "label": { "commentStart": 1404, "end": 0, "name": "center", "start": 0, "type": "Identifier" }, "arg": { "commentStart": 1413, "elements": [ { "commentStart": 1414, "end": 0, "raw": "4.4", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 4.4, "suffix": "None" } }, { "commentStart": 1419, "end": 0, "left": { "commentStart": 1419, "end": 0, "raw": "13.6", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 13.6, "suffix": "None" } }, "operator": "-", "right": { "commentStart": 1426, "end": 0, "raw": ".75", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 0.75, "suffix": "None" } }, "start": 0, "type": "BinaryExpression", "type": "BinaryExpression" } ], "end": 0, "start": 0, "type": "ArrayExpression", "type": "ArrayExpression" } }, { "type": "LabeledArg", "label": { "commentStart": 1432, "end": 0, "name": "radius", "start": 0, "type": "Identifier" }, "arg": { "commentStart": 1441, "end": 0, "raw": "0.4", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 0.4, "suffix": "None" } } } ], "callee": { "abs_path": false, "commentStart": 1386, "end": 0, "name": { "commentStart": 1386, "end": 0, "name": "circle", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name" }, "commentStart": 1386, "end": 0, "start": 0, "type": "CallExpressionKw", "type": "CallExpressionKw", "unlabeled": { "abs_path": false, "commentStart": 1393, "end": 0, "name": { "commentStart": 1393, "end": 0, "name": "sketch003", "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": 1446, "end": 0, "expression": { "arguments": [ { "type": "LabeledArg", "label": { "commentStart": 1529, "end": 0, "name": "length", "start": 0, "type": "Identifier" }, "arg": { "commentStart": 1538, "end": 0, "raw": ".15", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 0.15, "suffix": "None" } } } ], "callee": { "abs_path": false, "commentStart": 1446, "end": 0, "name": { "commentStart": 1446, "end": 0, "name": "extrude", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name" }, "commentStart": 1446, "end": 0, "start": 0, "type": "CallExpressionKw", "type": "CallExpressionKw", "unlabeled": { "commentStart": 1457, "elements": [ { "abs_path": false, "commentStart": 1463, "end": 0, "name": { "commentStart": 1463, "end": 0, "name": "profile001", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name", "type": "Name" }, { "abs_path": false, "commentStart": 1479, "end": 0, "name": { "commentStart": 1479, "end": 0, "name": "profile003", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name", "type": "Name" }, { "abs_path": false, "commentStart": 1495, "end": 0, "name": { "commentStart": 1495, "end": 0, "name": "profile004", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name", "type": "Name" }, { "abs_path": false, "commentStart": 1511, "end": 0, "name": { "commentStart": 1511, "end": 0, "name": "profile005", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name", "type": "Name" } ], "end": 0, "start": 0, "type": "ArrayExpression", "type": "ArrayExpression" } }, "start": 0, "type": "ExpressionStatement", "type": "ExpressionStatement" }, { "commentStart": 1544, "declaration": { "commentStart": 1593, "end": 0, "id": { "commentStart": 1593, "end": 0, "name": "plane001", "start": 0, "type": "Identifier" }, "init": { "commentStart": 1604, "end": 0, "properties": [ { "commentStart": 1608, "end": 0, "key": { "commentStart": 1608, "end": 0, "name": "plane", "start": 0, "type": "Identifier" }, "start": 0, "type": "ObjectProperty", "value": { "commentStart": 1616, "end": 0, "properties": [ { "commentStart": 1622, "end": 0, "key": { "commentStart": 1622, "end": 0, "name": "origin", "start": 0, "type": "Identifier" }, "start": 0, "type": "ObjectProperty", "value": { "commentStart": 1631, "elements": [ { "commentStart": 1632, "end": 0, "raw": "0.0", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 0.0, "suffix": "None" } }, { "commentStart": 1637, "end": 0, "raw": "0.0", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 0.0, "suffix": "None" } }, { "commentStart": 1642, "end": 0, "raw": "0.7", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 0.7, "suffix": "None" } } ], "end": 0, "start": 0, "type": "ArrayExpression", "type": "ArrayExpression" } }, { "commentStart": 1652, "end": 0, "key": { "commentStart": 1652, "end": 0, "name": "xAxis", "start": 0, "type": "Identifier" }, "start": 0, "type": "ObjectProperty", "value": { "commentStart": 1660, "elements": [ { "commentStart": 1661, "end": 0, "raw": "1.0", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 1.0, "suffix": "None" } }, { "commentStart": 1666, "end": 0, "raw": "0.0", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 0.0, "suffix": "None" } }, { "commentStart": 1671, "end": 0, "raw": "0.0", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 0.0, "suffix": "None" } } ], "end": 0, "start": 0, "type": "ArrayExpression", "type": "ArrayExpression" } }, { "commentStart": 1681, "end": 0, "key": { "commentStart": 1681, "end": 0, "name": "yAxis", "start": 0, "type": "Identifier" }, "start": 0, "type": "ObjectProperty", "value": { "commentStart": 1689, "elements": [ { "commentStart": 1690, "end": 0, "raw": "0.0", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 0.0, "suffix": "None" } }, { "commentStart": 1695, "end": 0, "raw": "1.0", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 1.0, "suffix": "None" } }, { "arguments": [ { "arguments": [ { "commentStart": 1714, "end": 0, "raw": "7", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 7.0, "suffix": "None" } } ], "callee": { "abs_path": false, "commentStart": 1704, "end": 0, "name": { "commentStart": 1704, "end": 0, "name": "toRadians", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name" }, "commentStart": 1704, "end": 0, "start": 0, "type": "CallExpression", "type": "CallExpression" } ], "callee": { "abs_path": false, "commentStart": 1700, "end": 0, "name": { "commentStart": 1700, "end": 0, "name": "sin", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name" }, "commentStart": 1700, "end": 0, "start": 0, "type": "CallExpression", "type": "CallExpression" } ], "end": 0, "start": 0, "type": "ArrayExpression", "type": "ArrayExpression" } }, { "commentStart": 1724, "end": 0, "key": { "commentStart": 1724, "end": 0, "name": "zAxis", "start": 0, "type": "Identifier" }, "start": 0, "type": "ObjectProperty", "value": { "commentStart": 1732, "elements": [ { "commentStart": 1733, "end": 0, "raw": "0.0", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 0.0, "suffix": "None" } }, { "commentStart": 1738, "end": 0, "raw": "0.0", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 0.0, "suffix": "None" } }, { "commentStart": 1743, "end": 0, "raw": "1.0", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 1.0, "suffix": "None" } } ], "end": 0, "start": 0, "type": "ArrayExpression", "type": "ArrayExpression" } } ], "start": 0, "type": "ObjectExpression", "type": "ObjectExpression" } } ], "start": 0, "type": "ObjectExpression", "type": "ObjectExpression" }, "start": 0, "type": "VariableDeclarator" }, "end": 0, "kind": "const", "preComments": [ "", "", "// Define the plane to sketch keyboard keys on" ], "start": 0, "type": "VariableDeclaration", "type": "VariableDeclaration" }, { "commentStart": 1753, "declaration": { "commentStart": 1880, "end": 0, "id": { "commentStart": 1880, "end": 0, "name": "keyFn", "start": 0, "type": "Identifier" }, "init": { "body": { "body": [ { "commentStart": 1940, "declaration": { "commentStart": 1940, "end": 0, "id": { "commentStart": 1940, "end": 0, "name": "sketch002", "start": 0, "type": "Identifier" }, "init": { "arguments": [ { "abs_path": false, "commentStart": 1966, "end": 0, "name": { "commentStart": 1966, "end": 0, "name": "plane001", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name", "type": "Name" } ], "callee": { "abs_path": false, "commentStart": 1952, "end": 0, "name": { "commentStart": 1952, "end": 0, "name": "startSketchOn", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name" }, "commentStart": 1952, "end": 0, "start": 0, "type": "CallExpression", "type": "CallExpression" }, "start": 0, "type": "VariableDeclarator" }, "end": 0, "kind": "const", "start": 0, "type": "VariableDeclaration", "type": "VariableDeclaration" }, { "commentStart": 1978, "declaration": { "commentStart": 1978, "end": 0, "id": { "commentStart": 1978, "end": 0, "name": "profile002", "start": 0, "type": "Identifier" }, "init": { "body": [ { "arguments": [ { "commentStart": 2006, "elements": [ { "commentStart": 2007, "computed": false, "end": 0, "object": { "commentStart": 2007, "end": 0, "name": "originStart", "start": 0, "type": "Identifier", "type": "Identifier" }, "property": { "commentStart": 2019, "end": 0, "raw": "0", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 0.0, "suffix": "None" } }, "start": 0, "type": "MemberExpression", "type": "MemberExpression" }, { "commentStart": 2023, "computed": false, "end": 0, "object": { "commentStart": 2023, "end": 0, "name": "originStart", "start": 0, "type": "Identifier", "type": "Identifier" }, "property": { "commentStart": 2035, "end": 0, "raw": "1", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 1.0, "suffix": "None" } }, "start": 0, "type": "MemberExpression", "type": "MemberExpression" } ], "end": 0, "start": 0, "type": "ArrayExpression", "type": "ArrayExpression" }, { "abs_path": false, "commentStart": 2040, "end": 0, "name": { "commentStart": 2040, "end": 0, "name": "sketch002", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name", "type": "Name" } ], "callee": { "abs_path": false, "commentStart": 1991, "end": 0, "name": { "commentStart": 1991, "end": 0, "name": "startProfileAt", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name" }, "commentStart": 1991, "end": 0, "start": 0, "type": "CallExpression", "type": "CallExpression" }, { "arguments": [ { "commentStart": 2062, "end": 0, "properties": [ { "commentStart": 2073, "end": 0, "key": { "commentStart": 2073, "end": 0, "name": "angleStart", "start": 0, "type": "Identifier" }, "start": 0, "type": "ObjectProperty", "value": { "commentStart": 2086, "end": 0, "raw": "180", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 180.0, "suffix": "None" } } }, { "commentStart": 2100, "end": 0, "key": { "commentStart": 2100, "end": 0, "name": "angleEnd", "start": 0, "type": "Identifier" }, "start": 0, "type": "ObjectProperty", "value": { "commentStart": 2111, "end": 0, "raw": "270", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 270.0, "suffix": "None" } } }, { "commentStart": 2125, "end": 0, "key": { "commentStart": 2125, "end": 0, "name": "radius", "start": 0, "type": "Identifier" }, "start": 0, "type": "ObjectProperty", "value": { "commentStart": 2134, "end": 0, "raw": "0.1", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 0.1, "suffix": "None" } } } ], "start": 0, "type": "ObjectExpression", "type": "ObjectExpression" }, { "commentStart": 2148, "end": 0, "start": 0, "type": "PipeSubstitution", "type": "PipeSubstitution" } ], "callee": { "abs_path": false, "commentStart": 2058, "end": 0, "name": { "commentStart": 2058, "end": 0, "name": "arc", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name" }, "commentStart": 2058, "end": 0, "start": 0, "type": "CallExpression", "type": "CallExpression" }, { "arguments": [ { "commentStart": 2169, "elements": [ { "commentStart": 2170, "end": 0, "raw": "0", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 0.0, "suffix": "None" } }, { "commentStart": 2173, "end": 0, "left": { "abs_path": false, "commentStart": 2173, "end": 0, "name": { "commentStart": 2173, "end": 0, "name": "keyWidth", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name", "type": "Name" }, "operator": "-", "right": { "commentStart": 2184, "end": 0, "raw": ".2", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 0.2, "suffix": "None" } }, "start": 0, "type": "BinaryExpression", "type": "BinaryExpression" } ], "end": 0, "start": 0, "type": "ArrayExpression", "type": "ArrayExpression" }, { "commentStart": 2189, "end": 0, "start": 0, "type": "PipeSubstitution", "type": "PipeSubstitution" }, { "commentStart": 2192, "end": 0, "start": 0, "type": "TagDeclarator", "type": "TagDeclarator", "value": "rectangleSegmentA001" } ], "callee": { "abs_path": false, "commentStart": 2158, "end": 0, "name": { "commentStart": 2158, "end": 0, "name": "angledLine", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name" }, "commentStart": 2158, "end": 0, "start": 0, "type": "CallExpression", "type": "CallExpression" }, { "arguments": [ { "commentStart": 2236, "end": 0, "properties": [ { "commentStart": 2238, "end": 0, "key": { "commentStart": 2238, "end": 0, "name": "radius", "start": 0, "type": "Identifier" }, "start": 0, "type": "ObjectProperty", "value": { "commentStart": 2247, "end": 0, "raw": "0.1", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 0.1, "suffix": "None" } } }, { "commentStart": 2252, "end": 0, "key": { "commentStart": 2252, "end": 0, "name": "offset", "start": 0, "type": "Identifier" }, "start": 0, "type": "ObjectProperty", "value": { "commentStart": 2261, "end": 0, "raw": "90", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 90.0, "suffix": "None" } } } ], "start": 0, "type": "ObjectExpression", "type": "ObjectExpression" }, { "commentStart": 2267, "end": 0, "start": 0, "type": "PipeSubstitution", "type": "PipeSubstitution" } ], "callee": { "abs_path": false, "commentStart": 2222, "end": 0, "name": { "commentStart": 2222, "end": 0, "name": "tangentialArc", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name" }, "commentStart": 2222, "end": 0, "start": 0, "type": "CallExpression", "type": "CallExpression" }, { "arguments": [ { "commentStart": 2288, "elements": [ { "commentStart": 2299, "end": 0, "left": { "arguments": [ { "abs_path": false, "commentStart": 2306, "end": 0, "name": { "commentStart": 2306, "end": 0, "name": "rectangleSegmentA001", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name", "type": "Name" } ], "callee": { "abs_path": false, "commentStart": 2299, "end": 0, "name": { "commentStart": 2299, "end": 0, "name": "segAng", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name" }, "commentStart": 2299, "end": 0, "start": 0, "type": "CallExpression", "type": "CallExpression" }, "operator": "+", "right": { "commentStart": 2330, "end": 0, "raw": "90", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 90.0, "suffix": "None" } }, "start": 0, "type": "BinaryExpression", "type": "BinaryExpression" }, { "commentStart": 2343, "end": 0, "left": { "abs_path": false, "commentStart": 2343, "end": 0, "name": { "commentStart": 2343, "end": 0, "name": "keyHeight", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name", "type": "Name" }, "operator": "-", "right": { "commentStart": 2355, "end": 0, "raw": ".2", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 0.2, "suffix": "None" } }, "start": 0, "type": "BinaryExpression", "type": "BinaryExpression" } ], "end": 0, "start": 0, "type": "ArrayExpression", "type": "ArrayExpression" }, { "commentStart": 2368, "end": 0, "start": 0, "type": "PipeSubstitution", "type": "PipeSubstitution" }, { "commentStart": 2371, "end": 0, "start": 0, "type": "TagDeclarator", "type": "TagDeclarator", "value": "rectangleSegmentB001" } ], "callee": { "abs_path": false, "commentStart": 2277, "end": 0, "name": { "commentStart": 2277, "end": 0, "name": "angledLine", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name" }, "commentStart": 2277, "end": 0, "start": 0, "type": "CallExpression", "type": "CallExpression" }, { "arguments": [ { "commentStart": 2415, "end": 0, "properties": [ { "commentStart": 2417, "end": 0, "key": { "commentStart": 2417, "end": 0, "name": "radius", "start": 0, "type": "Identifier" }, "start": 0, "type": "ObjectProperty", "value": { "commentStart": 2426, "end": 0, "raw": "0.1", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 0.1, "suffix": "None" } } }, { "commentStart": 2431, "end": 0, "key": { "commentStart": 2431, "end": 0, "name": "offset", "start": 0, "type": "Identifier" }, "start": 0, "type": "ObjectProperty", "value": { "commentStart": 2440, "end": 0, "raw": "90", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 90.0, "suffix": "None" } } } ], "start": 0, "type": "ObjectExpression", "type": "ObjectExpression" }, { "commentStart": 2446, "end": 0, "start": 0, "type": "PipeSubstitution", "type": "PipeSubstitution" } ], "callee": { "abs_path": false, "commentStart": 2401, "end": 0, "name": { "commentStart": 2401, "end": 0, "name": "tangentialArc", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name" }, "commentStart": 2401, "end": 0, "start": 0, "type": "CallExpression", "type": "CallExpression" }, { "arguments": [ { "commentStart": 2467, "elements": [ { "arguments": [ { "abs_path": false, "commentStart": 2485, "end": 0, "name": { "commentStart": 2485, "end": 0, "name": "rectangleSegmentA001", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name", "type": "Name" } ], "callee": { "abs_path": false, "commentStart": 2478, "end": 0, "name": { "commentStart": 2478, "end": 0, "name": "segAng", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name" }, "commentStart": 2478, "end": 0, "start": 0, "type": "CallExpression", "type": "CallExpression" }, { "argument": { "arguments": [ { "abs_path": false, "commentStart": 2525, "end": 0, "name": { "commentStart": 2525, "end": 0, "name": "rectangleSegmentA001", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name", "type": "Name" } ], "callee": { "abs_path": false, "commentStart": 2518, "end": 0, "name": { "commentStart": 2518, "end": 0, "name": "segLen", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name" }, "commentStart": 2518, "end": 0, "start": 0, "type": "CallExpression", "type": "CallExpression" }, "commentStart": 2517, "end": 0, "operator": "-", "start": 0, "type": "UnaryExpression", "type": "UnaryExpression" } ], "end": 0, "start": 0, "type": "ArrayExpression", "type": "ArrayExpression" }, { "commentStart": 2557, "end": 0, "start": 0, "type": "PipeSubstitution", "type": "PipeSubstitution" }, { "commentStart": 2560, "end": 0, "start": 0, "type": "TagDeclarator", "type": "TagDeclarator", "value": "rectangleSegmentC001" } ], "callee": { "abs_path": false, "commentStart": 2456, "end": 0, "name": { "commentStart": 2456, "end": 0, "name": "angledLine", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name" }, "commentStart": 2456, "end": 0, "start": 0, "type": "CallExpression", "type": "CallExpression" }, { "arguments": [ { "commentStart": 2604, "end": 0, "properties": [ { "commentStart": 2606, "end": 0, "key": { "commentStart": 2606, "end": 0, "name": "radius", "start": 0, "type": "Identifier" }, "start": 0, "type": "ObjectProperty", "value": { "commentStart": 2615, "end": 0, "raw": "0.1", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 0.1, "suffix": "None" } } }, { "commentStart": 2620, "end": 0, "key": { "commentStart": 2620, "end": 0, "name": "offset", "start": 0, "type": "Identifier" }, "start": 0, "type": "ObjectProperty", "value": { "commentStart": 2629, "end": 0, "raw": "90", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 90.0, "suffix": "None" } } } ], "start": 0, "type": "ObjectExpression", "type": "ObjectExpression" }, { "commentStart": 2635, "end": 0, "start": 0, "type": "PipeSubstitution", "type": "PipeSubstitution" } ], "callee": { "abs_path": false, "commentStart": 2590, "end": 0, "name": { "commentStart": 2590, "end": 0, "name": "tangentialArc", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name" }, "commentStart": 2590, "end": 0, "start": 0, "type": "CallExpression", "type": "CallExpression" }, { "arguments": [ { "type": "LabeledArg", "label": { "commentStart": 2650, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { "commentStart": 2664, "elements": [ { "arguments": [ { "commentStart": 2679, "end": 0, "start": 0, "type": "PipeSubstitution", "type": "PipeSubstitution" } ], "callee": { "abs_path": false, "commentStart": 2665, "end": 0, "name": { "commentStart": 2665, "end": 0, "name": "profileStartX", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name" }, "commentStart": 2665, "end": 0, "start": 0, "type": "CallExpression", "type": "CallExpression" }, { "arguments": [ { "commentStart": 2697, "end": 0, "start": 0, "type": "PipeSubstitution", "type": "PipeSubstitution" } ], "callee": { "abs_path": false, "commentStart": 2683, "end": 0, "name": { "commentStart": 2683, "end": 0, "name": "profileStartY", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name" }, "commentStart": 2683, "end": 0, "start": 0, "type": "CallExpression", "type": "CallExpression" } ], "end": 0, "start": 0, "type": "ArrayExpression", "type": "ArrayExpression" } }, { "type": "LabeledArg", "label": { "commentStart": 2702, "end": 0, "name": "tag", "start": 0, "type": "Identifier" }, "arg": { "commentStart": 2708, "end": 0, "start": 0, "type": "TagDeclarator", "type": "TagDeclarator", "value": "rectangleSegmentD001" } } ], "callee": { "abs_path": false, "commentStart": 2645, "end": 0, "name": { "commentStart": 2645, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name" }, "commentStart": 2645, "end": 0, "start": 0, "type": "CallExpressionKw", "type": "CallExpressionKw", "unlabeled": null }, { "arguments": [], "callee": { "abs_path": false, "commentStart": 2738, "end": 0, "name": { "commentStart": 2738, "end": 0, "name": "close", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name" }, "commentStart": 2738, "end": 0, "start": 0, "type": "CallExpression", "type": "CallExpression" }, { "arguments": [ { "type": "LabeledArg", "label": { "commentStart": 2761, "end": 0, "name": "length", "start": 0, "type": "Identifier" }, "arg": { "abs_path": false, "commentStart": 2770, "end": 0, "name": { "commentStart": 2770, "end": 0, "name": "keyDepth", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name", "type": "Name" } } ], "callee": { "abs_path": false, "commentStart": 2753, "end": 0, "name": { "commentStart": 2753, "end": 0, "name": "extrude", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name" }, "commentStart": 2753, "end": 0, "start": 0, "type": "CallExpressionKw", "type": "CallExpressionKw", "unlabeled": null }, { "arguments": [ { "type": "LabeledArg", "label": { "commentStart": 2798, "end": 0, "name": "color", "start": 0, "type": "Identifier" }, "arg": { "abs_path": false, "commentStart": 2806, "end": 0, "name": { "commentStart": 2806, "end": 0, "name": "color", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name", "type": "Name" } } ], "callee": { "abs_path": false, "commentStart": 2787, "end": 0, "name": { "commentStart": 2787, "end": 0, "name": "appearance", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name" }, "commentStart": 2787, "end": 0, "start": 0, "type": "CallExpressionKw", "type": "CallExpressionKw", "unlabeled": null }, { "arguments": [ { "type": "LabeledArg", "label": { "commentStart": 2916, "end": 0, "name": "instances", "start": 0, "type": "Identifier" }, "arg": { "commentStart": 2928, "end": 0, "left": { "abs_path": false, "commentStart": 2928, "end": 0, "name": { "commentStart": 2928, "end": 0, "name": "repeats", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name", "type": "Name" }, "operator": "+", "right": { "commentStart": 2938, "end": 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": 2950, "end": 0, "name": "distance", "start": 0, "type": "Identifier" }, "arg": { "commentStart": 2961, "end": 0, "left": { "abs_path": false, "commentStart": 2961, "end": 0, "name": { "commentStart": 2961, "end": 0, "name": "keyWidth", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name", "type": "Name" }, "operator": "+", "right": { "abs_path": false, "commentStart": 2972, "end": 0, "name": { "commentStart": 2972, "end": 0, "name": "spacing", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name", "type": "Name" }, "start": 0, "type": "BinaryExpression", "type": "BinaryExpression" } }, { "type": "LabeledArg", "label": { "commentStart": 2990, "end": 0, "name": "axis", "start": 0, "type": "Identifier" }, "arg": { "commentStart": 2997, "elements": [ { "commentStart": 2998, "end": 0, "raw": "1", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 1.0, "suffix": "None" } }, { "commentStart": 3001, "end": 0, "raw": "0", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 0.0, "suffix": "None" } }, { "commentStart": 3004, "end": 0, "raw": "0", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 0.0, "suffix": "None" } } ], "end": 0, "start": 0, "type": "ArrayExpression", "type": "ArrayExpression" } } ], "callee": { "abs_path": false, "commentStart": 2878, "end": 0, "name": { "commentStart": 2878, "end": 0, "name": "patternLinear3d", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name" }, "commentStart": 2878, "end": 0, "start": 0, "type": "CallExpressionKw", "type": "CallExpressionKw", "unlabeled": { "commentStart": 2904, "end": 0, "start": 0, "type": "PipeSubstitution", "type": "PipeSubstitution" } } ], "commentStart": 1991, "end": 0, "nonCodeMeta": { "nonCodeNodes": { "11": [ { "commentStart": 2816, "end": 0, "start": 0, "type": "NonCodeNode", "value": { "type": "blockComment", "value": "Repeat key when desired. This will default to zero", "style": "line" } } ] }, "startNodes": [] }, "start": 0, "type": "PipeExpression", "type": "PipeExpression" }, "start": 0, "type": "VariableDeclarator" }, "end": 0, "kind": "const", "start": 0, "type": "VariableDeclaration", "type": "VariableDeclaration" }, { "argument": { "abs_path": false, "commentStart": 3026, "end": 0, "name": { "commentStart": 3026, "end": 0, "name": "sketch001", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name", "type": "Name" }, "commentStart": 3019, "end": 0, "start": 0, "type": "ReturnStatement", "type": "ReturnStatement" } ], "commentStart": 1936, "end": 0, "start": 0 }, "commentStart": 1885, "end": 0, "params": [ { "type": "Parameter", "identifier": { "commentStart": 1886, "end": 0, "name": "originStart", "start": 0, "type": "Identifier" } }, { "type": "Parameter", "identifier": { "commentStart": 1899, "end": 0, "name": "keyWidth", "start": 0, "type": "Identifier" } }, { "type": "Parameter", "identifier": { "commentStart": 1909, "end": 0, "name": "keyHeight", "start": 0, "type": "Identifier" } }, { "type": "Parameter", "identifier": { "commentStart": 1920, "end": 0, "name": "repeats", "start": 0, "type": "Identifier" } }, { "type": "Parameter", "identifier": { "commentStart": 1929, "end": 0, "name": "color", "start": 0, "type": "Identifier" } } ], "start": 0, "type": "FunctionExpression", "type": "FunctionExpression" }, "start": 0, "type": "VariableDeclarator" }, "end": 0, "kind": "fn", "preComments": [ "", "", "// Create a function to build a key. Parameterize for position, width, height, number of instances, and appearance color." ], "start": 0, "type": "VariableDeclaration", "type": "VariableDeclaration" }, { "commentStart": 3037, "end": 0, "expression": { "arguments": [ { "commentStart": 3076, "elements": [ { "commentStart": 3077, "end": 0, "raw": "0.3", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 0.3, "suffix": "None" } }, { "abs_path": false, "commentStart": 3082, "end": 0, "name": { "commentStart": 3082, "end": 0, "name": "row1", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name", "type": "Name" } ], "end": 0, "start": 0, "type": "ArrayExpression", "type": "ArrayExpression" }, { "commentStart": 3089, "end": 0, "raw": "1.1", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 1.1, "suffix": "None" } }, { "abs_path": false, "commentStart": 3094, "end": 0, "name": { "commentStart": 3094, "end": 0, "name": "keyHeight", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name", "type": "Name" }, { "commentStart": 3105, "end": 0, "raw": "0", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 0.0, "suffix": "None" } }, { "abs_path": false, "commentStart": 3108, "end": 0, "name": { "commentStart": 3108, "end": 0, "name": "highlightColor2", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name", "type": "Name" } ], "callee": { "abs_path": false, "commentStart": 3070, "end": 0, "name": { "commentStart": 3070, "end": 0, "name": "keyFn", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name" }, "commentStart": 3070, "end": 0, "start": 0, "type": "CallExpression", "type": "CallExpression" }, "preComments": [ "", "", "// Build the first row of keys" ], "start": 0, "type": "ExpressionStatement", "type": "ExpressionStatement" }, { "commentStart": 3125, "end": 0, "expression": { "arguments": [ { "commentStart": 3131, "elements": [ { "commentStart": 3132, "end": 0, "raw": "1.5", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 1.5, "suffix": "None" } }, { "abs_path": false, "commentStart": 3137, "end": 0, "name": { "commentStart": 3137, "end": 0, "name": "row1", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name", "type": "Name" } ], "end": 0, "start": 0, "type": "ArrayExpression", "type": "ArrayExpression" }, { "commentStart": 3144, "end": 0, "raw": "0.8", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 0.8, "suffix": "None" } }, { "abs_path": false, "commentStart": 3149, "end": 0, "name": { "commentStart": 3149, "end": 0, "name": "keyHeight", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name", "type": "Name" }, { "commentStart": 3160, "end": 0, "raw": "2", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 2.0, "suffix": "None" } }, { "abs_path": false, "commentStart": 3163, "end": 0, "name": { "commentStart": 3163, "end": 0, "name": "highlightColor1", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name", "type": "Name" } ], "callee": { "abs_path": false, "commentStart": 3125, "end": 0, "name": { "commentStart": 3125, "end": 0, "name": "keyFn", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name" }, "commentStart": 3125, "end": 0, "start": 0, "type": "CallExpression", "type": "CallExpression" }, "start": 0, "type": "ExpressionStatement", "type": "ExpressionStatement" }, { "commentStart": 3180, "end": 0, "expression": { "arguments": [ { "commentStart": 3186, "elements": [ { "commentStart": 3187, "end": 0, "left": { "commentStart": 3187, "end": 0, "left": { "abs_path": false, "commentStart": 3187, "end": 0, "name": { "commentStart": 3187, "end": 0, "name": "spacing", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name", "type": "Name" }, "operator": "*", "right": { "commentStart": 3197, "end": 0, "raw": "7", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 7.0, "suffix": "None" } }, "start": 0, "type": "BinaryExpression", "type": "BinaryExpression" }, "operator": "+", "right": { "commentStart": 3201, "end": 0, "raw": "3.5", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 3.5, "suffix": "None" } }, "start": 0, "type": "BinaryExpression", "type": "BinaryExpression" }, { "abs_path": false, "commentStart": 3206, "end": 0, "name": { "commentStart": 3206, "end": 0, "name": "row1", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name", "type": "Name" } ], "end": 0, "start": 0, "type": "ArrayExpression", "type": "ArrayExpression" }, { "commentStart": 3213, "end": 0, "raw": "5.2", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 5.2, "suffix": "None" } }, { "abs_path": false, "commentStart": 3218, "end": 0, "name": { "commentStart": 3218, "end": 0, "name": "keyHeight", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name", "type": "Name" }, { "commentStart": 3229, "end": 0, "raw": "0", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 0.0, "suffix": "None" } }, { "abs_path": false, "commentStart": 3232, "end": 0, "name": { "commentStart": 3232, "end": 0, "name": "highlightColor2", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name", "type": "Name" } ], "callee": { "abs_path": false, "commentStart": 3180, "end": 0, "name": { "commentStart": 3180, "end": 0, "name": "keyFn", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name" }, "commentStart": 3180, "end": 0, "start": 0, "type": "CallExpression", "type": "CallExpression" }, "start": 0, "type": "ExpressionStatement", "type": "ExpressionStatement" }, { "commentStart": 3249, "end": 0, "expression": { "arguments": [ { "commentStart": 3255, "elements": [ { "commentStart": 3256, "end": 0, "left": { "commentStart": 3256, "end": 0, "left": { "abs_path": false, "commentStart": 3256, "end": 0, "name": { "commentStart": 3256, "end": 0, "name": "spacing", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name", "type": "Name" }, "operator": "*", "right": { "commentStart": 3266, "end": 0, "raw": "8", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 8.0, "suffix": "None" } }, "start": 0, "type": "BinaryExpression", "type": "BinaryExpression" }, "operator": "+", "right": { "commentStart": 3270, "end": 0, "raw": "8.7", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 8.7, "suffix": "None" } }, "start": 0, "type": "BinaryExpression", "type": "BinaryExpression" }, { "abs_path": false, "commentStart": 3275, "end": 0, "name": { "commentStart": 3275, "end": 0, "name": "row1", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name", "type": "Name" } ], "end": 0, "start": 0, "type": "ArrayExpression", "type": "ArrayExpression" }, { "commentStart": 3282, "end": 0, "raw": "0.8", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 0.8, "suffix": "None" } }, { "abs_path": false, "commentStart": 3287, "end": 0, "name": { "commentStart": 3287, "end": 0, "name": "keyHeight", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name", "type": "Name" }, { "commentStart": 3298, "end": 0, "raw": "0", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 0.0, "suffix": "None" } }, { "abs_path": false, "commentStart": 3301, "end": 0, "name": { "commentStart": 3301, "end": 0, "name": "highlightColor1", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name", "type": "Name" } ], "callee": { "abs_path": false, "commentStart": 3249, "end": 0, "name": { "commentStart": 3249, "end": 0, "name": "keyFn", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name" }, "commentStart": 3249, "end": 0, "start": 0, "type": "CallExpression", "type": "CallExpression" }, "start": 0, "type": "ExpressionStatement", "type": "ExpressionStatement" }, { "commentStart": 3318, "end": 0, "expression": { "arguments": [ { "commentStart": 3324, "elements": [ { "commentStart": 3325, "end": 0, "left": { "commentStart": 3325, "end": 0, "left": { "abs_path": false, "commentStart": 3325, "end": 0, "name": { "commentStart": 3325, "end": 0, "name": "spacing", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name", "type": "Name" }, "operator": "*", "right": { "commentStart": 3335, "end": 0, "raw": "8", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 8.0, "suffix": "None" } }, "start": 0, "type": "BinaryExpression", "type": "BinaryExpression" }, "operator": "+", "right": { "commentStart": 3339, "end": 0, "raw": "9.6", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 9.6, "suffix": "None" } }, "start": 0, "type": "BinaryExpression", "type": "BinaryExpression" }, { "abs_path": false, "commentStart": 3344, "end": 0, "name": { "commentStart": 3344, "end": 0, "name": "row1", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name", "type": "Name" } ], "end": 0, "start": 0, "type": "ArrayExpression", "type": "ArrayExpression" }, { "commentStart": 3351, "end": 0, "raw": "0.8", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 0.8, "suffix": "None" } }, { "abs_path": false, "commentStart": 3356, "end": 0, "name": { "commentStart": 3356, "end": 0, "name": "keyHeight", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name", "type": "Name" }, { "commentStart": 3367, "end": 0, "raw": "0", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 0.0, "suffix": "None" } }, { "abs_path": false, "commentStart": 3370, "end": 0, "name": { "commentStart": 3370, "end": 0, "name": "highlightColor1", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name", "type": "Name" } ], "callee": { "abs_path": false, "commentStart": 3318, "end": 0, "name": { "commentStart": 3318, "end": 0, "name": "keyFn", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name" }, "commentStart": 3318, "end": 0, "start": 0, "type": "CallExpression", "type": "CallExpression" }, "start": 0, "type": "ExpressionStatement", "type": "ExpressionStatement" }, { "commentStart": 3387, "end": 0, "expression": { "arguments": [ { "commentStart": 3393, "elements": [ { "commentStart": 3394, "end": 0, "left": { "commentStart": 3394, "end": 0, "left": { "abs_path": false, "commentStart": 3394, "end": 0, "name": { "commentStart": 3394, "end": 0, "name": "spacing", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name", "type": "Name" }, "operator": "*", "right": { "commentStart": 3404, "end": 0, "raw": "10", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 10.0, "suffix": "None" } }, "start": 0, "type": "BinaryExpression", "type": "BinaryExpression" }, "operator": "+", "right": { "commentStart": 3409, "end": 0, "raw": "10.3", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 10.3, "suffix": "None" } }, "start": 0, "type": "BinaryExpression", "type": "BinaryExpression" }, { "abs_path": false, "commentStart": 3415, "end": 0, "name": { "commentStart": 3415, "end": 0, "name": "row1", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name", "type": "Name" } ], "end": 0, "start": 0, "type": "ArrayExpression", "type": "ArrayExpression" }, { "commentStart": 3422, "end": 0, "raw": "1.1", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 1.1, "suffix": "None" } }, { "abs_path": false, "commentStart": 3427, "end": 0, "name": { "commentStart": 3427, "end": 0, "name": "keyHeight", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name", "type": "Name" }, { "commentStart": 3438, "end": 0, "raw": "0", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 0.0, "suffix": "None" } }, { "abs_path": false, "commentStart": 3441, "end": 0, "name": { "commentStart": 3441, "end": 0, "name": "highlightColor1", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name", "type": "Name" } ], "callee": { "abs_path": false, "commentStart": 3387, "end": 0, "name": { "commentStart": 3387, "end": 0, "name": "keyFn", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name" }, "commentStart": 3387, "end": 0, "start": 0, "type": "CallExpression", "type": "CallExpression" }, "start": 0, "type": "ExpressionStatement", "type": "ExpressionStatement" }, { "commentStart": 3458, "end": 0, "expression": { "arguments": [ { "commentStart": 3464, "elements": [ { "commentStart": 3465, "end": 0, "left": { "commentStart": 3465, "end": 0, "left": { "commentStart": 3465, "end": 0, "left": { "abs_path": false, "commentStart": 3465, "end": 0, "name": { "commentStart": 3465, "end": 0, "name": "spacing", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name", "type": "Name" }, "operator": "*", "right": { "commentStart": 3475, "end": 0, "raw": "12", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 12.0, "suffix": "None" } }, "start": 0, "type": "BinaryExpression", "type": "BinaryExpression" }, "operator": "+", "right": { "commentStart": 3480, "end": 0, "raw": "10.3", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 10.3, "suffix": "None" } }, "start": 0, "type": "BinaryExpression", "type": "BinaryExpression" }, "operator": "+", "right": { "commentStart": 3487, "end": 0, "raw": "1", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 1.0, "suffix": "None" } }, "start": 0, "type": "BinaryExpression", "type": "BinaryExpression" }, { "abs_path": false, "commentStart": 3490, "end": 0, "name": { "commentStart": 3490, "end": 0, "name": "row1", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name", "type": "Name" } ], "end": 0, "start": 0, "type": "ArrayExpression", "type": "ArrayExpression" }, { "commentStart": 3497, "end": 0, "raw": "0.8", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 0.8, "suffix": "None" } }, { "abs_path": false, "commentStart": 3502, "end": 0, "name": { "commentStart": 3502, "end": 0, "name": "keyHeight", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name", "type": "Name" }, { "commentStart": 3513, "end": 0, "raw": "0", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 0.0, "suffix": "None" } }, { "abs_path": false, "commentStart": 3516, "end": 0, "name": { "commentStart": 3516, "end": 0, "name": "highlightColor2", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name", "type": "Name" } ], "callee": { "abs_path": false, "commentStart": 3458, "end": 0, "name": { "commentStart": 3458, "end": 0, "name": "keyFn", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name" }, "commentStart": 3458, "end": 0, "start": 0, "type": "CallExpression", "type": "CallExpression" }, "start": 0, "type": "ExpressionStatement", "type": "ExpressionStatement" }, { "commentStart": 3532, "end": 0, "expression": { "arguments": [ { "commentStart": 3572, "elements": [ { "commentStart": 3573, "end": 0, "left": { "abs_path": false, "commentStart": 3573, "end": 0, "name": { "commentStart": 3573, "end": 0, "name": "spacing", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name", "type": "Name" }, "operator": "*", "right": { "commentStart": 3583, "end": 0, "raw": "3", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 3.0, "suffix": "None" } }, "start": 0, "type": "BinaryExpression", "type": "BinaryExpression" }, { "abs_path": false, "commentStart": 3586, "end": 0, "name": { "commentStart": 3586, "end": 0, "name": "row2", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name", "type": "Name" } ], "end": 0, "start": 0, "type": "ArrayExpression", "type": "ArrayExpression" }, { "commentStart": 3593, "end": 0, "raw": "1.7", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 1.7, "suffix": "None" } }, { "abs_path": false, "commentStart": 3598, "end": 0, "name": { "commentStart": 3598, "end": 0, "name": "keyHeight", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name", "type": "Name" }, { "commentStart": 3609, "end": 0, "raw": "0", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 0.0, "suffix": "None" } }, { "abs_path": false, "commentStart": 3612, "end": 0, "name": { "commentStart": 3612, "end": 0, "name": "highlightColor2", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name", "type": "Name" } ], "callee": { "abs_path": false, "commentStart": 3566, "end": 0, "name": { "commentStart": 3566, "end": 0, "name": "keyFn", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name" }, "commentStart": 3566, "end": 0, "start": 0, "type": "CallExpression", "type": "CallExpression" }, "preComments": [ "", "", "// Build the second row of keys" ], "start": 0, "type": "ExpressionStatement", "type": "ExpressionStatement" }, { "commentStart": 3629, "end": 0, "expression": { "arguments": [ { "commentStart": 3635, "elements": [ { "commentStart": 3636, "end": 0, "left": { "commentStart": 3636, "end": 0, "left": { "abs_path": false, "commentStart": 3636, "end": 0, "name": { "commentStart": 3636, "end": 0, "name": "spacing", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name", "type": "Name" }, "operator": "*", "right": { "commentStart": 3646, "end": 0, "raw": "4", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 4.0, "suffix": "None" } }, "start": 0, "type": "BinaryExpression", "type": "BinaryExpression" }, "operator": "+", "right": { "commentStart": 3650, "end": 0, "raw": "1.7", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 1.7, "suffix": "None" } }, "start": 0, "type": "BinaryExpression", "type": "BinaryExpression" }, { "abs_path": false, "commentStart": 3655, "end": 0, "name": { "commentStart": 3655, "end": 0, "name": "row2", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name", "type": "Name" } ], "end": 0, "start": 0, "type": "ArrayExpression", "type": "ArrayExpression" }, { "commentStart": 3662, "end": 0, "raw": "0.8", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 0.8, "suffix": "None" } }, { "abs_path": false, "commentStart": 3667, "end": 0, "name": { "commentStart": 3667, "end": 0, "name": "keyHeight", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name", "type": "Name" }, { "commentStart": 3678, "end": 0, "raw": "9", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 9.0, "suffix": "None" } }, { "abs_path": false, "commentStart": 3681, "end": 0, "name": { "commentStart": 3681, "end": 0, "name": "highlightColor1", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name", "type": "Name" } ], "callee": { "abs_path": false, "commentStart": 3629, "end": 0, "name": { "commentStart": 3629, "end": 0, "name": "keyFn", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name" }, "commentStart": 3629, "end": 0, "start": 0, "type": "CallExpression", "type": "CallExpression" }, "start": 0, "type": "ExpressionStatement", "type": "ExpressionStatement" }, { "commentStart": 3698, "end": 0, "expression": { "arguments": [ { "commentStart": 3704, "elements": [ { "commentStart": 3705, "end": 0, "left": { "commentStart": 3705, "end": 0, "left": { "commentStart": 3705, "end": 0, "left": { "abs_path": false, "commentStart": 3705, "end": 0, "name": { "commentStart": 3705, "end": 0, "name": "spacing", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name", "type": "Name" }, "operator": "*", "right": { "commentStart": 3715, "end": 0, "raw": "14", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 14.0, "suffix": "None" } }, "start": 0, "type": "BinaryExpression", "type": "BinaryExpression" }, "operator": "+", "right": { "commentStart": 3720, "end": 0, "raw": "1.7", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 1.7, "suffix": "None" } }, "start": 0, "type": "BinaryExpression", "type": "BinaryExpression" }, "operator": "+", "right": { "commentStart": 3726, "end": 0, "left": { "commentStart": 3726, "end": 0, "raw": "0.8", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 0.8, "suffix": "None" } }, "operator": "*", "right": { "commentStart": 3732, "end": 0, "raw": "10", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 10.0, "suffix": "None" } }, "start": 0, "type": "BinaryExpression", "type": "BinaryExpression" }, "start": 0, "type": "BinaryExpression", "type": "BinaryExpression" }, { "abs_path": false, "commentStart": 3736, "end": 0, "name": { "commentStart": 3736, "end": 0, "name": "row2", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name", "type": "Name" } ], "end": 0, "start": 0, "type": "ArrayExpression", "type": "ArrayExpression" }, { "commentStart": 3743, "end": 0, "raw": "2.2", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 2.2, "suffix": "None" } }, { "abs_path": false, "commentStart": 3748, "end": 0, "name": { "commentStart": 3748, "end": 0, "name": "keyHeight", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name", "type": "Name" }, { "commentStart": 3759, "end": 0, "raw": "0", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 0.0, "suffix": "None" } }, { "abs_path": false, "commentStart": 3762, "end": 0, "name": { "commentStart": 3762, "end": 0, "name": "highlightColor2", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name", "type": "Name" } ], "callee": { "abs_path": false, "commentStart": 3698, "end": 0, "name": { "commentStart": 3698, "end": 0, "name": "keyFn", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name" }, "commentStart": 3698, "end": 0, "start": 0, "type": "CallExpression", "type": "CallExpression" }, "start": 0, "type": "ExpressionStatement", "type": "ExpressionStatement" }, { "commentStart": 3778, "end": 0, "expression": { "arguments": [ { "commentStart": 3817, "elements": [ { "commentStart": 3818, "end": 0, "left": { "abs_path": false, "commentStart": 3818, "end": 0, "name": { "commentStart": 3818, "end": 0, "name": "spacing", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name", "type": "Name" }, "operator": "*", "right": { "commentStart": 3828, "end": 0, "raw": "3", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 3.0, "suffix": "None" } }, "start": 0, "type": "BinaryExpression", "type": "BinaryExpression" }, { "abs_path": false, "commentStart": 3831, "end": 0, "name": { "commentStart": 3831, "end": 0, "name": "row3", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name", "type": "Name" } ], "end": 0, "start": 0, "type": "ArrayExpression", "type": "ArrayExpression" }, { "commentStart": 3838, "end": 0, "left": { "commentStart": 3838, "end": 0, "raw": "1.1", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 1.1, "suffix": "None" } }, "operator": "+", "right": { "commentStart": 3844, "end": 0, "raw": ".1", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 0.1, "suffix": "None" } }, "start": 0, "type": "BinaryExpression", "type": "BinaryExpression" }, { "abs_path": false, "commentStart": 3848, "end": 0, "name": { "commentStart": 3848, "end": 0, "name": "keyHeight", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name", "type": "Name" }, { "commentStart": 3859, "end": 0, "raw": "0", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 0.0, "suffix": "None" } }, { "abs_path": false, "commentStart": 3862, "end": 0, "name": { "commentStart": 3862, "end": 0, "name": "highlightColor1", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name", "type": "Name" } ], "callee": { "abs_path": false, "commentStart": 3811, "end": 0, "name": { "commentStart": 3811, "end": 0, "name": "keyFn", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name" }, "commentStart": 3811, "end": 0, "start": 0, "type": "CallExpression", "type": "CallExpression" }, "preComments": [ "", "", "// Build the third row of keys" ], "start": 0, "type": "ExpressionStatement", "type": "ExpressionStatement" }, { "commentStart": 3879, "end": 0, "expression": { "arguments": [ { "commentStart": 3885, "elements": [ { "commentStart": 3886, "end": 0, "left": { "commentStart": 3886, "end": 0, "left": { "commentStart": 3886, "end": 0, "left": { "abs_path": false, "commentStart": 3886, "end": 0, "name": { "commentStart": 3886, "end": 0, "name": "spacing", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name", "type": "Name" }, "operator": "*", "right": { "commentStart": 3896, "end": 0, "raw": "4", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 4.0, "suffix": "None" } }, "start": 0, "type": "BinaryExpression", "type": "BinaryExpression" }, "operator": "+", "right": { "commentStart": 3900, "end": 0, "raw": "1.1", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 1.1, "suffix": "None" } }, "start": 0, "type": "BinaryExpression", "type": "BinaryExpression" }, "operator": "+", "right": { "commentStart": 3906, "end": 0, "raw": ".1", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 0.1, "suffix": "None" } }, "start": 0, "type": "BinaryExpression", "type": "BinaryExpression" }, { "abs_path": false, "commentStart": 3910, "end": 0, "name": { "commentStart": 3910, "end": 0, "name": "row3", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name", "type": "Name" } ], "end": 0, "start": 0, "type": "ArrayExpression", "type": "ArrayExpression" }, { "commentStart": 3917, "end": 0, "raw": "0.8", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 0.8, "suffix": "None" } }, { "abs_path": false, "commentStart": 3922, "end": 0, "name": { "commentStart": 3922, "end": 0, "name": "keyHeight", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name", "type": "Name" }, { "commentStart": 3933, "end": 0, "raw": "10", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 10.0, "suffix": "None" } }, { "abs_path": false, "commentStart": 3937, "end": 0, "name": { "commentStart": 3937, "end": 0, "name": "highlightColor1", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name", "type": "Name" } ], "callee": { "abs_path": false, "commentStart": 3879, "end": 0, "name": { "commentStart": 3879, "end": 0, "name": "keyFn", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name" }, "commentStart": 3879, "end": 0, "start": 0, "type": "CallExpression", "type": "CallExpression" }, "start": 0, "type": "ExpressionStatement", "type": "ExpressionStatement" }, { "commentStart": 3954, "end": 0, "expression": { "arguments": [ { "commentStart": 3960, "elements": [ { "commentStart": 3961, "end": 0, "left": { "commentStart": 3961, "end": 0, "left": { "commentStart": 3961, "end": 0, "left": { "abs_path": false, "commentStart": 3961, "end": 0, "name": { "commentStart": 3961, "end": 0, "name": "spacing", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name", "type": "Name" }, "operator": "*", "right": { "commentStart": 3971, "end": 0, "raw": "3", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 3.0, "suffix": "None" } }, "start": 0, "type": "BinaryExpression", "type": "BinaryExpression" }, "operator": "+", "right": { "commentStart": 3975, "end": 0, "raw": "11.1", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 11.1, "suffix": "None" } }, "start": 0, "type": "BinaryExpression", "type": "BinaryExpression" }, "operator": "+", "right": { "commentStart": 3982, "end": 0, "raw": ".1", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 0.1, "suffix": "None" } }, "start": 0, "type": "BinaryExpression", "type": "BinaryExpression" }, { "abs_path": false, "commentStart": 3986, "end": 0, "name": { "commentStart": 3986, "end": 0, "name": "row3", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name", "type": "Name" } ], "end": 0, "start": 0, "type": "ArrayExpression", "type": "ArrayExpression" }, { "commentStart": 3993, "end": 0, "left": { "commentStart": 3993, "end": 0, "raw": "1.4", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 1.4, "suffix": "None" } }, "operator": "+", "right": { "commentStart": 3999, "end": 0, "raw": ".4", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 0.4, "suffix": "None" } }, "start": 0, "type": "BinaryExpression", "type": "BinaryExpression" }, { "abs_path": false, "commentStart": 4003, "end": 0, "name": { "commentStart": 4003, "end": 0, "name": "keyHeight", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name", "type": "Name" }, { "commentStart": 4014, "end": 0, "raw": "0", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 0.0, "suffix": "None" } }, { "abs_path": false, "commentStart": 4017, "end": 0, "name": { "commentStart": 4017, "end": 0, "name": "highlightColor2", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name", "type": "Name" } ], "callee": { "abs_path": false, "commentStart": 3954, "end": 0, "name": { "commentStart": 3954, "end": 0, "name": "keyFn", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name" }, "commentStart": 3954, "end": 0, "start": 0, "type": "CallExpression", "type": "CallExpression" }, "start": 0, "type": "ExpressionStatement", "type": "ExpressionStatement" }, { "commentStart": 4033, "end": 0, "expression": { "arguments": [ { "commentStart": 4073, "elements": [ { "commentStart": 4074, "end": 0, "left": { "abs_path": false, "commentStart": 4074, "end": 0, "name": { "commentStart": 4074, "end": 0, "name": "spacing", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name", "type": "Name" }, "operator": "*", "right": { "commentStart": 4084, "end": 0, "raw": "3", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 3.0, "suffix": "None" } }, "start": 0, "type": "BinaryExpression", "type": "BinaryExpression" }, { "abs_path": false, "commentStart": 4087, "end": 0, "name": { "commentStart": 4087, "end": 0, "name": "row4", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name", "type": "Name" } ], "end": 0, "start": 0, "type": "ArrayExpression", "type": "ArrayExpression" }, { "commentStart": 4094, "end": 0, "raw": "0.9", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 0.9, "suffix": "None" } }, { "abs_path": false, "commentStart": 4099, "end": 0, "name": { "commentStart": 4099, "end": 0, "name": "keyHeight", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name", "type": "Name" }, { "commentStart": 4110, "end": 0, "raw": "0", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 0.0, "suffix": "None" } }, { "abs_path": false, "commentStart": 4113, "end": 0, "name": { "commentStart": 4113, "end": 0, "name": "highlightColor1", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name", "type": "Name" } ], "callee": { "abs_path": false, "commentStart": 4067, "end": 0, "name": { "commentStart": 4067, "end": 0, "name": "keyFn", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name" }, "commentStart": 4067, "end": 0, "start": 0, "type": "CallExpression", "type": "CallExpression" }, "preComments": [ "", "", "// Build the fourth row of keys" ], "start": 0, "type": "ExpressionStatement", "type": "ExpressionStatement" }, { "commentStart": 4130, "end": 0, "expression": { "arguments": [ { "commentStart": 4136, "elements": [ { "commentStart": 4137, "end": 0, "left": { "commentStart": 4137, "end": 0, "left": { "abs_path": false, "commentStart": 4137, "end": 0, "name": { "commentStart": 4137, "end": 0, "name": "spacing", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name", "type": "Name" }, "operator": "*", "right": { "commentStart": 4147, "end": 0, "raw": "4", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 4.0, "suffix": "None" } }, "start": 0, "type": "BinaryExpression", "type": "BinaryExpression" }, "operator": "+", "right": { "commentStart": 4151, "end": 0, "raw": "0.9", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 0.9, "suffix": "None" } }, "start": 0, "type": "BinaryExpression", "type": "BinaryExpression" }, { "abs_path": false, "commentStart": 4156, "end": 0, "name": { "commentStart": 4156, "end": 0, "name": "row4", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name", "type": "Name" } ], "end": 0, "start": 0, "type": "ArrayExpression", "type": "ArrayExpression" }, { "commentStart": 4163, "end": 0, "raw": "0.8", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 0.8, "suffix": "None" } }, { "abs_path": false, "commentStart": 4168, "end": 0, "name": { "commentStart": 4168, "end": 0, "name": "keyHeight", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name", "type": "Name" }, { "commentStart": 4179, "end": 0, "raw": "11", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 11.0, "suffix": "None" } }, { "abs_path": false, "commentStart": 4183, "end": 0, "name": { "commentStart": 4183, "end": 0, "name": "highlightColor1", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name", "type": "Name" } ], "callee": { "abs_path": false, "commentStart": 4130, "end": 0, "name": { "commentStart": 4130, "end": 0, "name": "keyFn", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name" }, "commentStart": 4130, "end": 0, "start": 0, "type": "CallExpression", "type": "CallExpression" }, "start": 0, "type": "ExpressionStatement", "type": "ExpressionStatement" }, { "commentStart": 4200, "end": 0, "expression": { "arguments": [ { "commentStart": 4206, "elements": [ { "commentStart": 4207, "end": 0, "left": { "commentStart": 4207, "end": 0, "left": { "abs_path": false, "commentStart": 4207, "end": 0, "name": { "commentStart": 4207, "end": 0, "name": "spacing", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name", "type": "Name" }, "operator": "*", "right": { "commentStart": 4217, "end": 0, "raw": "3", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 3.0, "suffix": "None" } }, "start": 0, "type": "BinaryExpression", "type": "BinaryExpression" }, "operator": "+", "right": { "commentStart": 4221, "end": 0, "raw": "11.8", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 11.8, "suffix": "None" } }, "start": 0, "type": "BinaryExpression", "type": "BinaryExpression" }, { "abs_path": false, "commentStart": 4227, "end": 0, "name": { "commentStart": 4227, "end": 0, "name": "row4", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name", "type": "Name" } ], "end": 0, "start": 0, "type": "ArrayExpression", "type": "ArrayExpression" }, { "commentStart": 4234, "end": 0, "raw": "1.2", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 1.2, "suffix": "None" } }, { "abs_path": false, "commentStart": 4239, "end": 0, "name": { "commentStart": 4239, "end": 0, "name": "keyHeight", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name", "type": "Name" }, { "commentStart": 4250, "end": 0, "raw": "0", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 0.0, "suffix": "None" } }, { "abs_path": false, "commentStart": 4253, "end": 0, "name": { "commentStart": 4253, "end": 0, "name": "highlightColor1", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name", "type": "Name" } ], "callee": { "abs_path": false, "commentStart": 4200, "end": 0, "name": { "commentStart": 4200, "end": 0, "name": "keyFn", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name" }, "commentStart": 4200, "end": 0, "start": 0, "type": "CallExpression", "type": "CallExpression" }, "start": 0, "type": "ExpressionStatement", "type": "ExpressionStatement" }, { "commentStart": 4269, "end": 0, "expression": { "arguments": [ { "commentStart": 4308, "elements": [ { "commentStart": 4309, "end": 0, "left": { "abs_path": false, "commentStart": 4309, "end": 0, "name": { "commentStart": 4309, "end": 0, "name": "spacing", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name", "type": "Name" }, "operator": "*", "right": { "commentStart": 4319, "end": 0, "raw": "3", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 3.0, "suffix": "None" } }, "start": 0, "type": "BinaryExpression", "type": "BinaryExpression" }, { "abs_path": false, "commentStart": 4322, "end": 0, "name": { "commentStart": 4322, "end": 0, "name": "row5", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name", "type": "Name" } ], "end": 0, "start": 0, "type": "ArrayExpression", "type": "ArrayExpression" }, { "commentStart": 4329, "end": 0, "raw": "0.8", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 0.8, "suffix": "None" } }, { "abs_path": false, "commentStart": 4334, "end": 0, "name": { "commentStart": 4334, "end": 0, "name": "keyHeight", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name", "type": "Name" }, { "commentStart": 4345, "end": 0, "raw": "12", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 12.0, "suffix": "None" } }, { "abs_path": false, "commentStart": 4349, "end": 0, "name": { "commentStart": 4349, "end": 0, "name": "highlightColor1", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name", "type": "Name" } ], "callee": { "abs_path": false, "commentStart": 4302, "end": 0, "name": { "commentStart": 4302, "end": 0, "name": "keyFn", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name" }, "commentStart": 4302, "end": 0, "start": 0, "type": "CallExpression", "type": "CallExpression" }, "preComments": [ "", "", "// Build the fifth row of keys" ], "start": 0, "type": "ExpressionStatement", "type": "ExpressionStatement" }, { "commentStart": 4366, "end": 0, "expression": { "arguments": [ { "commentStart": 4372, "elements": [ { "commentStart": 4373, "end": 0, "left": { "commentStart": 4373, "end": 0, "left": { "abs_path": false, "commentStart": 4373, "end": 0, "name": { "commentStart": 4373, "end": 0, "name": "spacing", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name", "type": "Name" }, "operator": "*", "right": { "commentStart": 4383, "end": 0, "raw": "3", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 3.0, "suffix": "None" } }, "start": 0, "type": "BinaryExpression", "type": "BinaryExpression" }, "operator": "+", "right": { "commentStart": 4387, "end": 0, "raw": "11.7", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 11.7, "suffix": "None" } }, "start": 0, "type": "BinaryExpression", "type": "BinaryExpression" }, { "abs_path": false, "commentStart": 4393, "end": 0, "name": { "commentStart": 4393, "end": 0, "name": "row5", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name", "type": "Name" } ], "end": 0, "start": 0, "type": "ArrayExpression", "type": "ArrayExpression" }, { "commentStart": 4400, "end": 0, "raw": "1.3", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 1.3, "suffix": "None" } }, { "abs_path": false, "commentStart": 4405, "end": 0, "name": { "commentStart": 4405, "end": 0, "name": "keyHeight", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name", "type": "Name" }, { "commentStart": 4416, "end": 0, "raw": "0", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 0.0, "suffix": "None" } }, { "abs_path": false, "commentStart": 4419, "end": 0, "name": { "commentStart": 4419, "end": 0, "name": "highlightColor2", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name", "type": "Name" } ], "callee": { "abs_path": false, "commentStart": 4366, "end": 0, "name": { "commentStart": 4366, "end": 0, "name": "keyFn", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name" }, "commentStart": 4366, "end": 0, "start": 0, "type": "CallExpression", "type": "CallExpression" }, "start": 0, "type": "ExpressionStatement", "type": "ExpressionStatement" }, { "commentStart": 4435, "end": 0, "expression": { "arguments": [ { "commentStart": 4474, "elements": [ { "commentStart": 4475, "end": 0, "left": { "abs_path": false, "commentStart": 4475, "end": 0, "name": { "commentStart": 4475, "end": 0, "name": "spacing", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name", "type": "Name" }, "operator": "*", "right": { "commentStart": 4485, "end": 0, "raw": "3", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 3.0, "suffix": "None" } }, "start": 0, "type": "BinaryExpression", "type": "BinaryExpression" }, { "abs_path": false, "commentStart": 4488, "end": 0, "name": { "commentStart": 4488, "end": 0, "name": "row6", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name", "type": "Name" } ], "end": 0, "start": 0, "type": "ArrayExpression", "type": "ArrayExpression" }, { "commentStart": 4495, "end": 0, "raw": "1.1", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 1.1, "suffix": "None" } }, { "commentStart": 4500, "end": 0, "left": { "abs_path": false, "commentStart": 4500, "end": 0, "name": { "commentStart": 4500, "end": 0, "name": "keyHeight", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name", "type": "Name" }, "operator": "*", "right": { "commentStart": 4512, "end": 0, "raw": ".6", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 0.6, "suffix": "None" } }, "start": 0, "type": "BinaryExpression", "type": "BinaryExpression" }, { "commentStart": 4516, "end": 0, "raw": "0", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 0.0, "suffix": "None" } }, { "abs_path": false, "commentStart": 4519, "end": 0, "name": { "commentStart": 4519, "end": 0, "name": "highlightColor2", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name", "type": "Name" } ], "callee": { "abs_path": false, "commentStart": 4468, "end": 0, "name": { "commentStart": 4468, "end": 0, "name": "keyFn", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name" }, "commentStart": 4468, "end": 0, "start": 0, "type": "CallExpression", "type": "CallExpression" }, "preComments": [ "", "", "// Build the sixth row of keys" ], "start": 0, "type": "ExpressionStatement", "type": "ExpressionStatement" }, { "commentStart": 4536, "end": 0, "expression": { "arguments": [ { "commentStart": 4542, "elements": [ { "commentStart": 4543, "end": 0, "left": { "commentStart": 4543, "end": 0, "left": { "abs_path": false, "commentStart": 4543, "end": 0, "name": { "commentStart": 4543, "end": 0, "name": "spacing", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name", "type": "Name" }, "operator": "*", "right": { "commentStart": 4553, "end": 0, "raw": "4", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 4.0, "suffix": "None" } }, "start": 0, "type": "BinaryExpression", "type": "BinaryExpression" }, "operator": "+", "right": { "commentStart": 4557, "end": 0, "raw": "1.1", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 1.1, "suffix": "None" } }, "start": 0, "type": "BinaryExpression", "type": "BinaryExpression" }, { "abs_path": false, "commentStart": 4562, "end": 0, "name": { "commentStart": 4562, "end": 0, "name": "row6", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name", "type": "Name" } ], "end": 0, "start": 0, "type": "ArrayExpression", "type": "ArrayExpression" }, { "commentStart": 4569, "end": 0, "raw": "0.8", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 0.8, "suffix": "None" } }, { "commentStart": 4574, "end": 0, "left": { "abs_path": false, "commentStart": 4574, "end": 0, "name": { "commentStart": 4574, "end": 0, "name": "keyHeight", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name", "type": "Name" }, "operator": "*", "right": { "commentStart": 4586, "end": 0, "raw": ".6", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 0.6, "suffix": "None" } }, "start": 0, "type": "BinaryExpression", "type": "BinaryExpression" }, { "commentStart": 4590, "end": 0, "raw": "11", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 11.0, "suffix": "None" } }, { "abs_path": false, "commentStart": 4594, "end": 0, "name": { "commentStart": 4594, "end": 0, "name": "highlightColor1", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name", "type": "Name" } ], "callee": { "abs_path": false, "commentStart": 4536, "end": 0, "name": { "commentStart": 4536, "end": 0, "name": "keyFn", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name" }, "commentStart": 4536, "end": 0, "start": 0, "type": "CallExpression", "type": "CallExpression" }, "start": 0, "type": "ExpressionStatement", "type": "ExpressionStatement" }, { "commentStart": 4611, "end": 0, "expression": { "arguments": [ { "commentStart": 4617, "elements": [ { "commentStart": 4618, "end": 0, "left": { "commentStart": 4618, "end": 0, "left": { "abs_path": false, "commentStart": 4618, "end": 0, "name": { "commentStart": 4618, "end": 0, "name": "spacing", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name", "type": "Name" }, "operator": "*", "right": { "commentStart": 4628, "end": 0, "raw": "3", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 3.0, "suffix": "None" } }, "start": 0, "type": "BinaryExpression", "type": "BinaryExpression" }, "operator": "+", "right": { "commentStart": 4632, "end": 0, "raw": "12", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 12.0, "suffix": "None" } }, "start": 0, "type": "BinaryExpression", "type": "BinaryExpression" }, { "abs_path": false, "commentStart": 4636, "end": 0, "name": { "commentStart": 4636, "end": 0, "name": "row6", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name", "type": "Name" } ], "end": 0, "start": 0, "type": "ArrayExpression", "type": "ArrayExpression" }, { "commentStart": 4643, "end": 0, "raw": "1", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 1.0, "suffix": "None" } }, { "commentStart": 4646, "end": 0, "left": { "abs_path": false, "commentStart": 4646, "end": 0, "name": { "commentStart": 4646, "end": 0, "name": "keyHeight", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name", "type": "Name" }, "operator": "*", "right": { "commentStart": 4658, "end": 0, "raw": ".6", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 0.6, "suffix": "None" } }, "start": 0, "type": "BinaryExpression", "type": "BinaryExpression" }, { "commentStart": 4662, "end": 0, "raw": "0", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 0.0, "suffix": "None" } }, { "abs_path": false, "commentStart": 4665, "end": 0, "name": { "commentStart": 4665, "end": 0, "name": "highlightColor2", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name", "type": "Name" } ], "callee": { "abs_path": false, "commentStart": 4611, "end": 0, "name": { "commentStart": 4611, "end": 0, "name": "keyFn", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name" }, "commentStart": 4611, "end": 0, "start": 0, "type": "CallExpression", "type": "CallExpression" }, "start": 0, "type": "ExpressionStatement", "type": "ExpressionStatement" }, { "commentStart": 4681, "declaration": { "commentStart": 4732, "end": 0, "id": { "commentStart": 4732, "end": 0, "name": "plane002", "start": 0, "type": "Identifier" }, "init": { "commentStart": 4743, "end": 0, "properties": [ { "commentStart": 4747, "end": 0, "key": { "commentStart": 4747, "end": 0, "name": "plane", "start": 0, "type": "Identifier" }, "start": 0, "type": "ObjectProperty", "value": { "commentStart": 4755, "end": 0, "properties": [ { "commentStart": 4761, "end": 0, "key": { "commentStart": 4761, "end": 0, "name": "origin", "start": 0, "type": "Identifier" }, "start": 0, "type": "ObjectProperty", "value": { "commentStart": 4770, "elements": [ { "commentStart": 4771, "end": 0, "raw": "0.0", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 0.0, "suffix": "None" } }, { "commentStart": 4776, "end": 0, "raw": "0.0", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 0.0, "suffix": "None" } }, { "commentStart": 4781, "end": 0, "raw": ".81", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 0.81, "suffix": "None" } } ], "end": 0, "start": 0, "type": "ArrayExpression", "type": "ArrayExpression" } }, { "commentStart": 4791, "end": 0, "key": { "commentStart": 4791, "end": 0, "name": "xAxis", "start": 0, "type": "Identifier" }, "start": 0, "type": "ObjectProperty", "value": { "commentStart": 4799, "elements": [ { "commentStart": 4800, "end": 0, "raw": "1.0", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 1.0, "suffix": "None" } }, { "commentStart": 4805, "end": 0, "raw": "0.0", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 0.0, "suffix": "None" } }, { "commentStart": 4810, "end": 0, "raw": "0.0", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 0.0, "suffix": "None" } } ], "end": 0, "start": 0, "type": "ArrayExpression", "type": "ArrayExpression" } }, { "commentStart": 4820, "end": 0, "key": { "commentStart": 4820, "end": 0, "name": "yAxis", "start": 0, "type": "Identifier" }, "start": 0, "type": "ObjectProperty", "value": { "commentStart": 4828, "elements": [ { "commentStart": 4829, "end": 0, "raw": "0.0", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 0.0, "suffix": "None" } }, { "commentStart": 4834, "end": 0, "raw": "1.0", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 1.0, "suffix": "None" } }, { "arguments": [ { "arguments": [ { "commentStart": 4853, "end": 0, "raw": "7", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 7.0, "suffix": "None" } } ], "callee": { "abs_path": false, "commentStart": 4843, "end": 0, "name": { "commentStart": 4843, "end": 0, "name": "toRadians", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name" }, "commentStart": 4843, "end": 0, "start": 0, "type": "CallExpression", "type": "CallExpression" } ], "callee": { "abs_path": false, "commentStart": 4839, "end": 0, "name": { "commentStart": 4839, "end": 0, "name": "sin", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name" }, "commentStart": 4839, "end": 0, "start": 0, "type": "CallExpression", "type": "CallExpression" } ], "end": 0, "start": 0, "type": "ArrayExpression", "type": "ArrayExpression" } }, { "commentStart": 4863, "end": 0, "key": { "commentStart": 4863, "end": 0, "name": "zAxis", "start": 0, "type": "Identifier" }, "start": 0, "type": "ObjectProperty", "value": { "commentStart": 4871, "elements": [ { "commentStart": 4872, "end": 0, "raw": "0.0", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 0.0, "suffix": "None" } }, { "commentStart": 4877, "end": 0, "raw": "0.0", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 0.0, "suffix": "None" } }, { "commentStart": 4882, "end": 0, "raw": "1.0", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 1.0, "suffix": "None" } } ], "end": 0, "start": 0, "type": "ArrayExpression", "type": "ArrayExpression" } } ], "start": 0, "type": "ObjectExpression", "type": "ObjectExpression" } } ], "start": 0, "type": "ObjectExpression", "type": "ObjectExpression" }, "start": 0, "type": "VariableDeclarator" }, "end": 0, "kind": "const", "preComments": [ "", "", "// Create a plane to sketch ZOO brand letters on" ], "start": 0, "type": "VariableDeclaration", "type": "VariableDeclaration" }, { "commentStart": 4892, "declaration": { "commentStart": 4938, "end": 0, "id": { "commentStart": 4938, "end": 0, "name": "z", "start": 0, "type": "Identifier" }, "init": { "body": { "body": [ { "commentStart": 4966, "declaration": { "commentStart": 4966, "end": 0, "id": { "commentStart": 4966, "end": 0, "name": "z", "start": 0, "type": "Identifier" }, "init": { "body": [ { "arguments": [ { "abs_path": false, "commentStart": 4984, "end": 0, "name": { "commentStart": 4984, "end": 0, "name": "plane002", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name", "type": "Name" } ], "callee": { "abs_path": false, "commentStart": 4970, "end": 0, "name": { "commentStart": 4970, "end": 0, "name": "startSketchOn", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name" }, "commentStart": 4970, "end": 0, "start": 0, "type": "CallExpression", "type": "CallExpression" }, { "arguments": [ { "commentStart": 5016, "elements": [ { "commentStart": 5027, "end": 0, "left": { "commentStart": 5027, "end": 0, "raw": "0", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 0.0, "suffix": "None" } }, "operator": "+", "right": { "commentStart": 5031, "computed": false, "end": 0, "object": { "commentStart": 5031, "end": 0, "name": "origin", "start": 0, "type": "Identifier", "type": "Identifier" }, "property": { "commentStart": 5038, "end": 0, "raw": "0", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 0.0, "suffix": "None" } }, "start": 0, "type": "MemberExpression", "type": "MemberExpression" }, "start": 0, "type": "BinaryExpression", "type": "BinaryExpression" }, { "commentStart": 5051, "end": 0, "left": { "commentStart": 5051, "end": 0, "left": { "commentStart": 5051, "end": 0, "raw": "0.15", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 0.15, "suffix": "None" } }, "operator": "*", "right": { "abs_path": false, "commentStart": 5058, "end": 0, "name": { "commentStart": 5058, "end": 0, "name": "scale", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name", "type": "Name" }, "start": 0, "type": "BinaryExpression", "type": "BinaryExpression" }, "operator": "+", "right": { "commentStart": 5066, "computed": false, "end": 0, "object": { "commentStart": 5066, "end": 0, "name": "origin", "start": 0, "type": "Identifier", "type": "Identifier" }, "property": { "commentStart": 5073, "end": 0, "raw": "1", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 1.0, "suffix": "None" } }, "start": 0, "type": "MemberExpression", "type": "MemberExpression" }, "start": 0, "type": "BinaryExpression", "type": "BinaryExpression" } ], "end": 0, "start": 0, "type": "ArrayExpression", "type": "ArrayExpression" }, { "commentStart": 5086, "end": 0, "start": 0, "type": "PipeSubstitution", "type": "PipeSubstitution" } ], "callee": { "abs_path": false, "commentStart": 5001, "end": 0, "name": { "commentStart": 5001, "end": 0, "name": "startProfileAt", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name" }, "commentStart": 5001, "end": 0, "start": 0, "type": "CallExpression", "type": "CallExpression" }, { "arguments": [ { "type": "LabeledArg", "label": { "commentStart": 5102, "end": 0, "name": "length", "start": 0, "type": "Identifier" }, "arg": { "commentStart": 5111, "end": 0, "left": { "argument": { "commentStart": 5112, "end": 0, "raw": "0.15", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 0.15, "suffix": "None" } }, "commentStart": 5111, "end": 0, "operator": "-", "start": 0, "type": "UnaryExpression", "type": "UnaryExpression" }, "operator": "*", "right": { "abs_path": false, "commentStart": 5119, "end": 0, "name": { "commentStart": 5119, "end": 0, "name": "scale", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name", "type": "Name" }, "start": 0, "type": "BinaryExpression", "type": "BinaryExpression" } } ], "callee": { "abs_path": false, "commentStart": 5096, "end": 0, "name": { "commentStart": 5096, "end": 0, "name": "yLine", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name" }, "commentStart": 5096, "end": 0, "start": 0, "type": "CallExpressionKw", "type": "CallExpressionKw", "unlabeled": null }, { "arguments": [ { "type": "LabeledArg", "label": { "commentStart": 5139, "end": 0, "name": "length", "start": 0, "type": "Identifier" }, "arg": { "commentStart": 5148, "end": 0, "left": { "commentStart": 5148, "end": 0, "raw": "0.15", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 0.15, "suffix": "None" } }, "operator": "*", "right": { "abs_path": false, "commentStart": 5155, "end": 0, "name": { "commentStart": 5155, "end": 0, "name": "scale", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name", "type": "Name" }, "start": 0, "type": "BinaryExpression", "type": "BinaryExpression" } } ], "callee": { "abs_path": false, "commentStart": 5133, "end": 0, "name": { "commentStart": 5133, "end": 0, "name": "xLine", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name" }, "commentStart": 5133, "end": 0, "start": 0, "type": "CallExpressionKw", "type": "CallExpressionKw", "unlabeled": null }, { "arguments": [ { "commentStart": 5183, "end": 0, "properties": [ { "commentStart": 5194, "end": 0, "key": { "commentStart": 5194, "end": 0, "name": "angle", "start": 0, "type": "Identifier" }, "start": 0, "type": "ObjectProperty", "value": { "commentStart": 5202, "end": 0, "raw": "47.15", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 47.15, "suffix": "None" } } }, { "commentStart": 5218, "end": 0, "key": { "commentStart": 5218, "end": 0, "name": "to", "start": 0, "type": "Identifier" }, "start": 0, "type": "ObjectProperty", "value": { "commentStart": 5223, "end": 0, "left": { "commentStart": 5223, "end": 0, "left": { "commentStart": 5223, "end": 0, "raw": "0.3", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 0.3, "suffix": "None" } }, "operator": "*", "right": { "abs_path": false, "commentStart": 5229, "end": 0, "name": { "commentStart": 5229, "end": 0, "name": "scale", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name", "type": "Name" }, "start": 0, "type": "BinaryExpression", "type": "BinaryExpression" }, "operator": "+", "right": { "commentStart": 5237, "computed": false, "end": 0, "object": { "commentStart": 5237, "end": 0, "name": "origin", "start": 0, "type": "Identifier", "type": "Identifier" }, "property": { "commentStart": 5244, "end": 0, "raw": "0", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 0.0, "suffix": "None" } }, "start": 0, "type": "MemberExpression", "type": "MemberExpression" }, "start": 0, "type": "BinaryExpression", "type": "BinaryExpression" } } ], "start": 0, "type": "ObjectExpression", "type": "ObjectExpression" }, { "commentStart": 5257, "end": 0, "start": 0, "type": "PipeSubstitution", "type": "PipeSubstitution" }, { "commentStart": 5260, "end": 0, "start": 0, "type": "TagDeclarator", "type": "TagDeclarator", "value": "seg1" } ], "callee": { "abs_path": false, "commentStart": 5169, "end": 0, "name": { "commentStart": 5169, "end": 0, "name": "angledLineToX", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name" }, "commentStart": 5169, "end": 0, "start": 0, "type": "CallExpression", "type": "CallExpression" }, { "arguments": [ { "type": "LabeledArg", "label": { "commentStart": 5280, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { "commentStart": 5294, "end": 0, "left": { "commentStart": 5294, "end": 0, "raw": "0", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 0.0, "suffix": "None" } }, "operator": "+", "right": { "commentStart": 5298, "computed": false, "end": 0, "object": { "commentStart": 5298, "end": 0, "name": "origin", "start": 0, "type": "Identifier", "type": "Identifier" }, "property": { "commentStart": 5305, "end": 0, "raw": "1", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 1.0, "suffix": "None" } }, "start": 0, "type": "MemberExpression", "type": "MemberExpression" }, "start": 0, "type": "BinaryExpression", "type": "BinaryExpression" } }, { "type": "LabeledArg", "label": { "commentStart": 5309, "end": 0, "name": "tag", "start": 0, "type": "Identifier" }, "arg": { "commentStart": 5315, "end": 0, "start": 0, "type": "TagDeclarator", "type": "TagDeclarator", "value": "seg3" } } ], "callee": { "abs_path": false, "commentStart": 5274, "end": 0, "name": { "commentStart": 5274, "end": 0, "name": "yLine", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name" }, "commentStart": 5274, "end": 0, "start": 0, "type": "CallExpressionKw", "type": "CallExpressionKw", "unlabeled": null }, { "arguments": [ { "type": "LabeledArg", "label": { "commentStart": 5335, "end": 0, "name": "length", "start": 0, "type": "Identifier" }, "arg": { "commentStart": 5344, "end": 0, "left": { "commentStart": 5344, "end": 0, "raw": "0.63", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 0.63, "suffix": "None" } }, "operator": "*", "right": { "abs_path": false, "commentStart": 5351, "end": 0, "name": { "commentStart": 5351, "end": 0, "name": "scale", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name", "type": "Name" }, "start": 0, "type": "BinaryExpression", "type": "BinaryExpression" } } ], "callee": { "abs_path": false, "commentStart": 5329, "end": 0, "name": { "commentStart": 5329, "end": 0, "name": "xLine", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name" }, "commentStart": 5329, "end": 0, "start": 0, "type": "CallExpressionKw", "type": "CallExpressionKw", "unlabeled": null }, { "arguments": [ { "type": "LabeledArg", "label": { "commentStart": 5371, "end": 0, "name": "length", "start": 0, "type": "Identifier" }, "arg": { "commentStart": 5380, "end": 0, "left": { "commentStart": 5380, "end": 0, "raw": "0.225", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 0.225, "suffix": "None" } }, "operator": "*", "right": { "abs_path": false, "commentStart": 5388, "end": 0, "name": { "commentStart": 5388, "end": 0, "name": "scale", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name", "type": "Name" }, "start": 0, "type": "BinaryExpression", "type": "BinaryExpression" } } ], "callee": { "abs_path": false, "commentStart": 5365, "end": 0, "name": { "commentStart": 5365, "end": 0, "name": "yLine", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name" }, "commentStart": 5365, "end": 0, "start": 0, "type": "CallExpressionKw", "type": "CallExpressionKw", "unlabeled": null }, { "arguments": [ { "type": "LabeledArg", "label": { "commentStart": 5408, "end": 0, "name": "length", "start": 0, "type": "Identifier" }, "arg": { "commentStart": 5417, "end": 0, "left": { "argument": { "commentStart": 5418, "end": 0, "raw": "0.57", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 0.57, "suffix": "None" } }, "commentStart": 5417, "end": 0, "operator": "-", "start": 0, "type": "UnaryExpression", "type": "UnaryExpression" }, "operator": "*", "right": { "abs_path": false, "commentStart": 5425, "end": 0, "name": { "commentStart": 5425, "end": 0, "name": "scale", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name", "type": "Name" }, "start": 0, "type": "BinaryExpression", "type": "BinaryExpression" } } ], "callee": { "abs_path": false, "commentStart": 5402, "end": 0, "name": { "commentStart": 5402, "end": 0, "name": "xLine", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name" }, "commentStart": 5402, "end": 0, "start": 0, "type": "CallExpressionKw", "type": "CallExpressionKw", "unlabeled": null }, { "arguments": [ { "commentStart": 5453, "end": 0, "properties": [ { "commentStart": 5464, "end": 0, "key": { "commentStart": 5464, "end": 0, "name": "angle", "start": 0, "type": "Identifier" }, "start": 0, "type": "ObjectProperty", "value": { "commentStart": 5472, "end": 0, "raw": "47.15", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 47.15, "suffix": "None" } } }, { "commentStart": 5488, "end": 0, "key": { "commentStart": 5488, "end": 0, "name": "to", "start": 0, "type": "Identifier" }, "start": 0, "type": "ObjectProperty", "value": { "commentStart": 5493, "end": 0, "left": { "commentStart": 5493, "end": 0, "left": { "commentStart": 5493, "end": 0, "raw": "0.93", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 0.93, "suffix": "None" } }, "operator": "*", "right": { "abs_path": false, "commentStart": 5500, "end": 0, "name": { "commentStart": 5500, "end": 0, "name": "scale", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name", "type": "Name" }, "start": 0, "type": "BinaryExpression", "type": "BinaryExpression" }, "operator": "+", "right": { "commentStart": 5508, "computed": false, "end": 0, "object": { "commentStart": 5508, "end": 0, "name": "origin", "start": 0, "type": "Identifier", "type": "Identifier" }, "property": { "commentStart": 5515, "end": 0, "raw": "0", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 0.0, "suffix": "None" } }, "start": 0, "type": "MemberExpression", "type": "MemberExpression" }, "start": 0, "type": "BinaryExpression", "type": "BinaryExpression" } } ], "start": 0, "type": "ObjectExpression", "type": "ObjectExpression" }, { "commentStart": 5528, "end": 0, "start": 0, "type": "PipeSubstitution", "type": "PipeSubstitution" } ], "callee": { "abs_path": false, "commentStart": 5439, "end": 0, "name": { "commentStart": 5439, "end": 0, "name": "angledLineToX", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name" }, "commentStart": 5439, "end": 0, "start": 0, "type": "CallExpression", "type": "CallExpression" }, { "arguments": [ { "type": "LabeledArg", "label": { "commentStart": 5544, "end": 0, "name": "length", "start": 0, "type": "Identifier" }, "arg": { "commentStart": 5553, "end": 0, "left": { "commentStart": 5553, "end": 0, "raw": "0.15", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 0.15, "suffix": "None" } }, "operator": "*", "right": { "abs_path": false, "commentStart": 5560, "end": 0, "name": { "commentStart": 5560, "end": 0, "name": "scale", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name", "type": "Name" }, "start": 0, "type": "BinaryExpression", "type": "BinaryExpression" } } ], "callee": { "abs_path": false, "commentStart": 5538, "end": 0, "name": { "commentStart": 5538, "end": 0, "name": "yLine", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name" }, "commentStart": 5538, "end": 0, "start": 0, "type": "CallExpressionKw", "type": "CallExpressionKw", "unlabeled": null }, { "arguments": [ { "type": "LabeledArg", "label": { "commentStart": 5580, "end": 0, "name": "length", "start": 0, "type": "Identifier" }, "arg": { "commentStart": 5589, "end": 0, "left": { "argument": { "commentStart": 5590, "end": 0, "raw": "0.15", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 0.15, "suffix": "None" } }, "commentStart": 5589, "end": 0, "operator": "-", "start": 0, "type": "UnaryExpression", "type": "UnaryExpression" }, "operator": "*", "right": { "abs_path": false, "commentStart": 5597, "end": 0, "name": { "commentStart": 5597, "end": 0, "name": "scale", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name", "type": "Name" }, "start": 0, "type": "BinaryExpression", "type": "BinaryExpression" } } ], "callee": { "abs_path": false, "commentStart": 5574, "end": 0, "name": { "commentStart": 5574, "end": 0, "name": "xLine", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name" }, "commentStart": 5574, "end": 0, "start": 0, "type": "CallExpressionKw", "type": "CallExpressionKw", "unlabeled": null }, { "arguments": [ { "commentStart": 5622, "end": 0, "properties": [ { "commentStart": 5633, "end": 0, "key": { "commentStart": 5633, "end": 0, "name": "angle", "start": 0, "type": "Identifier" }, "start": 0, "type": "ObjectProperty", "value": { "commentStart": 5641, "end": 0, "raw": "47.15", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 47.15, "suffix": "None" } } }, { "commentStart": 5657, "end": 0, "key": { "commentStart": 5657, "end": 0, "name": "length", "start": 0, "type": "Identifier" }, "start": 0, "type": "ObjectProperty", "value": { "argument": { "arguments": [ { "abs_path": false, "commentStart": 5674, "end": 0, "name": { "commentStart": 5674, "end": 0, "name": "seg1", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name", "type": "Name" } ], "callee": { "abs_path": false, "commentStart": 5667, "end": 0, "name": { "commentStart": 5667, "end": 0, "name": "segLen", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name" }, "commentStart": 5667, "end": 0, "start": 0, "type": "CallExpression", "type": "CallExpression" }, "commentStart": 5666, "end": 0, "operator": "-", "start": 0, "type": "UnaryExpression", "type": "UnaryExpression" } } ], "start": 0, "type": "ObjectExpression", "type": "ObjectExpression" }, { "commentStart": 5690, "end": 0, "start": 0, "type": "PipeSubstitution", "type": "PipeSubstitution" }, { "commentStart": 5693, "end": 0, "start": 0, "type": "TagDeclarator", "type": "TagDeclarator", "value": "seg2" } ], "callee": { "abs_path": false, "commentStart": 5611, "end": 0, "name": { "commentStart": 5611, "end": 0, "name": "angledLine", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name" }, "commentStart": 5611, "end": 0, "start": 0, "type": "CallExpression", "type": "CallExpression" }, { "arguments": [ { "type": "LabeledArg", "label": { "commentStart": 5713, "end": 0, "name": "length", "start": 0, "type": "Identifier" }, "arg": { "arguments": [ { "abs_path": false, "commentStart": 5729, "end": 0, "name": { "commentStart": 5729, "end": 0, "name": "seg3", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name", "type": "Name" } ], "callee": { "abs_path": false, "commentStart": 5722, "end": 0, "name": { "commentStart": 5722, "end": 0, "name": "segLen", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name" }, "commentStart": 5722, "end": 0, "start": 0, "type": "CallExpression", "type": "CallExpression" } } ], "callee": { "abs_path": false, "commentStart": 5707, "end": 0, "name": { "commentStart": 5707, "end": 0, "name": "yLine", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name" }, "commentStart": 5707, "end": 0, "start": 0, "type": "CallExpressionKw", "type": "CallExpressionKw", "unlabeled": null }, { "arguments": [ { "type": "LabeledArg", "label": { "commentStart": 5749, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { "commentStart": 5763, "end": 0, "left": { "commentStart": 5763, "end": 0, "raw": "0", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 0.0, "suffix": "None" } }, "operator": "+", "right": { "commentStart": 5767, "computed": false, "end": 0, "object": { "commentStart": 5767, "end": 0, "name": "origin", "start": 0, "type": "Identifier", "type": "Identifier" }, "property": { "commentStart": 5774, "end": 0, "raw": "0", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 0.0, "suffix": "None" } }, "start": 0, "type": "MemberExpression", "type": "MemberExpression" }, "start": 0, "type": "BinaryExpression", "type": "BinaryExpression" } } ], "callee": { "abs_path": false, "commentStart": 5743, "end": 0, "name": { "commentStart": 5743, "end": 0, "name": "xLine", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name" }, "commentStart": 5743, "end": 0, "start": 0, "type": "CallExpressionKw", "type": "CallExpressionKw", "unlabeled": null }, { "arguments": [ { "type": "LabeledArg", "label": { "commentStart": 5791, "end": 0, "name": "length", "start": 0, "type": "Identifier" }, "arg": { "commentStart": 5800, "end": 0, "left": { "argument": { "commentStart": 5801, "end": 0, "raw": "0.225", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 0.225, "suffix": "None" } }, "commentStart": 5800, "end": 0, "operator": "-", "start": 0, "type": "UnaryExpression", "type": "UnaryExpression" }, "operator": "*", "right": { "abs_path": false, "commentStart": 5809, "end": 0, "name": { "commentStart": 5809, "end": 0, "name": "scale", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name", "type": "Name" }, "start": 0, "type": "BinaryExpression", "type": "BinaryExpression" } } ], "callee": { "abs_path": false, "commentStart": 5785, "end": 0, "name": { "commentStart": 5785, "end": 0, "name": "yLine", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name" }, "commentStart": 5785, "end": 0, "start": 0, "type": "CallExpressionKw", "type": "CallExpressionKw", "unlabeled": null }, { "arguments": [ { "commentStart": 5848, "end": 0, "properties": [ { "commentStart": 5859, "end": 0, "key": { "commentStart": 5859, "end": 0, "name": "angle", "start": 0, "type": "Identifier" }, "start": 0, "type": "ObjectProperty", "value": { "commentStart": 5867, "end": 0, "raw": "0", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 0.0, "suffix": "None" } } }, { "commentStart": 5879, "end": 0, "key": { "commentStart": 5879, "end": 0, "name": "intersectTag", "start": 0, "type": "Identifier" }, "start": 0, "type": "ObjectProperty", "value": { "abs_path": false, "commentStart": 5894, "end": 0, "name": { "commentStart": 5894, "end": 0, "name": "seg2", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name", "type": "Name" } }, { "commentStart": 5909, "end": 0, "key": { "commentStart": 5909, "end": 0, "name": "offset", "start": 0, "type": "Identifier" }, "start": 0, "type": "ObjectProperty", "value": { "commentStart": 5918, "end": 0, "raw": "0", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 0.0, "suffix": "None" } } } ], "start": 0, "type": "ObjectExpression", "type": "ObjectExpression" }, { "commentStart": 5930, "end": 0, "start": 0, "type": "PipeSubstitution", "type": "PipeSubstitution" } ], "callee": { "abs_path": false, "commentStart": 5823, "end": 0, "name": { "commentStart": 5823, "end": 0, "name": "angledLineThatIntersects", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name" }, "commentStart": 5823, "end": 0, "start": 0, "type": "CallExpression", "type": "CallExpression" }, { "arguments": [], "callee": { "abs_path": false, "commentStart": 5940, "end": 0, "name": { "commentStart": 5940, "end": 0, "name": "close", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name" }, "commentStart": 5940, "end": 0, "start": 0, "type": "CallExpression", "type": "CallExpression" }, { "arguments": [ { "type": "LabeledArg", "label": { "commentStart": 5963, "end": 0, "name": "length", "start": 0, "type": "Identifier" }, "arg": { "argument": { "abs_path": false, "commentStart": 5973, "end": 0, "name": { "commentStart": 5973, "end": 0, "name": "depth", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name", "type": "Name" }, "commentStart": 5972, "end": 0, "operator": "-", "start": 0, "type": "UnaryExpression", "type": "UnaryExpression" } } ], "callee": { "abs_path": false, "commentStart": 5955, "end": 0, "name": { "commentStart": 5955, "end": 0, "name": "extrude", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name" }, "commentStart": 5955, "end": 0, "start": 0, "type": "CallExpressionKw", "type": "CallExpressionKw", "unlabeled": null }, { "arguments": [ { "type": "LabeledArg", "label": { "commentStart": 5998, "end": 0, "name": "color", "start": 0, "type": "Identifier" }, "arg": { "abs_path": false, "commentStart": 6006, "end": 0, "name": { "commentStart": 6006, "end": 0, "name": "baseColor", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name", "type": "Name" } } ], "callee": { "abs_path": false, "commentStart": 5987, "end": 0, "name": { "commentStart": 5987, "end": 0, "name": "appearance", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name" }, "commentStart": 5987, "end": 0, "start": 0, "type": "CallExpressionKw", "type": "CallExpressionKw", "unlabeled": null } ], "commentStart": 4970, "end": 0, "start": 0, "type": "PipeExpression", "type": "PipeExpression" }, "start": 0, "type": "VariableDeclarator" }, "end": 0, "kind": "const", "start": 0, "type": "VariableDeclaration", "type": "VariableDeclaration" }, { "argument": { "abs_path": false, "commentStart": 6026, "end": 0, "name": { "commentStart": 6026, "end": 0, "name": "z", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name", "type": "Name" }, "commentStart": 6019, "end": 0, "start": 0, "type": "ReturnStatement", "type": "ReturnStatement" } ], "commentStart": 4962, "end": 0, "start": 0 }, "commentStart": 4939, "end": 0, "params": [ { "type": "Parameter", "identifier": { "commentStart": 4940, "end": 0, "name": "origin", "start": 0, "type": "Identifier" } }, { "type": "Parameter", "identifier": { "commentStart": 4948, "end": 0, "name": "scale", "start": 0, "type": "Identifier" } }, { "type": "Parameter", "identifier": { "commentStart": 4955, "end": 0, "name": "depth", "start": 0, "type": "Identifier" } } ], "start": 0, "type": "FunctionExpression", "type": "FunctionExpression" }, "start": 0, "type": "VariableDeclarator" }, "end": 0, "kind": "fn", "preComments": [ "", "", "// Define a function to draw the ZOO 'Z'" ], "start": 0, "type": "VariableDeclaration", "type": "VariableDeclaration" }, { "commentStart": 6029, "declaration": { "commentStart": 6075, "end": 0, "id": { "commentStart": 6075, "end": 0, "name": "o", "start": 0, "type": "Identifier" }, "init": { "body": { "body": [ { "commentStart": 6103, "declaration": { "commentStart": 6103, "end": 0, "id": { "commentStart": 6103, "end": 0, "name": "oSketch001", "start": 0, "type": "Identifier" }, "init": { "body": [ { "arguments": [ { "abs_path": false, "commentStart": 6130, "end": 0, "name": { "commentStart": 6130, "end": 0, "name": "plane002", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name", "type": "Name" } ], "callee": { "abs_path": false, "commentStart": 6116, "end": 0, "name": { "commentStart": 6116, "end": 0, "name": "startSketchOn", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name" }, "commentStart": 6116, "end": 0, "start": 0, "type": "CallExpression", "type": "CallExpression" }, { "arguments": [ { "commentStart": 6162, "elements": [ { "commentStart": 6173, "end": 0, "left": { "commentStart": 6173, "end": 0, "left": { "commentStart": 6173, "end": 0, "raw": ".788", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 0.788, "suffix": "None" } }, "operator": "*", "right": { "abs_path": false, "commentStart": 6180, "end": 0, "name": { "commentStart": 6180, "end": 0, "name": "scale", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name", "type": "Name" }, "start": 0, "type": "BinaryExpression", "type": "BinaryExpression" }, "operator": "+", "right": { "commentStart": 6188, "computed": false, "end": 0, "object": { "commentStart": 6188, "end": 0, "name": "origin", "start": 0, "type": "Identifier", "type": "Identifier" }, "property": { "commentStart": 6195, "end": 0, "raw": "0", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 0.0, "suffix": "None" } }, "start": 0, "type": "MemberExpression", "type": "MemberExpression" }, "start": 0, "type": "BinaryExpression", "type": "BinaryExpression" }, { "commentStart": 6208, "end": 0, "left": { "commentStart": 6208, "end": 0, "left": { "commentStart": 6208, "end": 0, "raw": ".921", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 0.921, "suffix": "None" } }, "operator": "*", "right": { "abs_path": false, "commentStart": 6215, "end": 0, "name": { "commentStart": 6215, "end": 0, "name": "scale", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name", "type": "Name" }, "start": 0, "type": "BinaryExpression", "type": "BinaryExpression" }, "operator": "+", "right": { "commentStart": 6223, "computed": false, "end": 0, "object": { "commentStart": 6223, "end": 0, "name": "origin", "start": 0, "type": "Identifier", "type": "Identifier" }, "property": { "commentStart": 6230, "end": 0, "raw": "1", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 1.0, "suffix": "None" } }, "start": 0, "type": "MemberExpression", "type": "MemberExpression" }, "start": 0, "type": "BinaryExpression", "type": "BinaryExpression" } ], "end": 0, "start": 0, "type": "ArrayExpression", "type": "ArrayExpression" }, { "commentStart": 6243, "end": 0, "start": 0, "type": "PipeSubstitution", "type": "PipeSubstitution" } ], "callee": { "abs_path": false, "commentStart": 6147, "end": 0, "name": { "commentStart": 6147, "end": 0, "name": "startProfileAt", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name" }, "commentStart": 6147, "end": 0, "start": 0, "type": "CallExpression", "type": "CallExpression" }, { "arguments": [ { "commentStart": 6257, "end": 0, "properties": [ { "commentStart": 6268, "end": 0, "key": { "commentStart": 6268, "end": 0, "name": "angleStart", "start": 0, "type": "Identifier" }, "start": 0, "type": "ObjectProperty", "value": { "commentStart": 6281, "end": 0, "left": { "commentStart": 6281, "end": 0, "raw": "47.15", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 47.15, "suffix": "None" } }, "operator": "+", "right": { "commentStart": 6289, "end": 0, "raw": "6", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 6.0, "suffix": "None" } }, "start": 0, "type": "BinaryExpression", "type": "BinaryExpression" } }, { "commentStart": 6301, "end": 0, "key": { "commentStart": 6301, "end": 0, "name": "angleEnd", "start": 0, "type": "Identifier" }, "start": 0, "type": "ObjectProperty", "value": { "commentStart": 6312, "end": 0, "left": { "commentStart": 6312, "end": 0, "left": { "commentStart": 6312, "end": 0, "raw": "47.15", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 47.15, "suffix": "None" } }, "operator": "-", "right": { "commentStart": 6320, "end": 0, "raw": "6", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 6.0, "suffix": "None" } }, "start": 0, "type": "BinaryExpression", "type": "BinaryExpression" }, "operator": "+", "right": { "commentStart": 6324, "end": 0, "raw": "180", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 180.0, "suffix": "None" } }, "start": 0, "type": "BinaryExpression", "type": "BinaryExpression" } }, { "commentStart": 6338, "end": 0, "key": { "commentStart": 6338, "end": 0, "name": "radius", "start": 0, "type": "Identifier" }, "start": 0, "type": "ObjectProperty", "value": { "commentStart": 6347, "end": 0, "left": { "commentStart": 6347, "end": 0, "raw": ".525", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 0.525, "suffix": "None" } }, "operator": "*", "right": { "abs_path": false, "commentStart": 6354, "end": 0, "name": { "commentStart": 6354, "end": 0, "name": "scale", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name", "type": "Name" }, "start": 0, "type": "BinaryExpression", "type": "BinaryExpression" } } ], "start": 0, "type": "ObjectExpression", "type": "ObjectExpression" }, { "commentStart": 6370, "end": 0, "start": 0, "type": "PipeSubstitution", "type": "PipeSubstitution" } ], "callee": { "abs_path": false, "commentStart": 6253, "end": 0, "name": { "commentStart": 6253, "end": 0, "name": "arc", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name" }, "commentStart": 6253, "end": 0, "start": 0, "type": "CallExpression", "type": "CallExpression" }, { "arguments": [ { "commentStart": 6391, "end": 0, "properties": [ { "commentStart": 6393, "end": 0, "key": { "commentStart": 6393, "end": 0, "name": "angle", "start": 0, "type": "Identifier" }, "start": 0, "type": "ObjectProperty", "value": { "commentStart": 6401, "end": 0, "raw": "47.15", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 47.15, "suffix": "None" } } }, { "commentStart": 6408, "end": 0, "key": { "commentStart": 6408, "end": 0, "name": "length", "start": 0, "type": "Identifier" }, "start": 0, "type": "ObjectProperty", "value": { "commentStart": 6417, "end": 0, "left": { "commentStart": 6417, "end": 0, "raw": ".24", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 0.24, "suffix": "None" } }, "operator": "*", "right": { "abs_path": false, "commentStart": 6423, "end": 0, "name": { "commentStart": 6423, "end": 0, "name": "scale", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name", "type": "Name" }, "start": 0, "type": "BinaryExpression", "type": "BinaryExpression" } } ], "start": 0, "type": "ObjectExpression", "type": "ObjectExpression" }, { "commentStart": 6432, "end": 0, "start": 0, "type": "PipeSubstitution", "type": "PipeSubstitution" } ], "callee": { "abs_path": false, "commentStart": 6380, "end": 0, "name": { "commentStart": 6380, "end": 0, "name": "angledLine", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name" }, "commentStart": 6380, "end": 0, "start": 0, "type": "CallExpression", "type": "CallExpression" }, { "arguments": [ { "commentStart": 6446, "end": 0, "properties": [ { "commentStart": 6457, "end": 0, "key": { "commentStart": 6457, "end": 0, "name": "angleStart", "start": 0, "type": "Identifier" }, "start": 0, "type": "ObjectProperty", "value": { "commentStart": 6470, "end": 0, "left": { "commentStart": 6470, "end": 0, "left": { "commentStart": 6470, "end": 0, "raw": "47.15", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 47.15, "suffix": "None" } }, "operator": "-", "right": { "commentStart": 6478, "end": 0, "raw": "11", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 11.0, "suffix": "None" } }, "start": 0, "type": "BinaryExpression", "type": "BinaryExpression" }, "operator": "+", "right": { "commentStart": 6483, "end": 0, "raw": "180", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 180.0, "suffix": "None" } }, "start": 0, "type": "BinaryExpression", "type": "BinaryExpression" } }, { "commentStart": 6497, "end": 0, "key": { "commentStart": 6497, "end": 0, "name": "angleEnd", "start": 0, "type": "Identifier" }, "start": 0, "type": "ObjectProperty", "value": { "commentStart": 6508, "end": 0, "left": { "commentStart": 6508, "end": 0, "raw": "47.15", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 47.15, "suffix": "None" } }, "operator": "+", "right": { "commentStart": 6516, "end": 0, "raw": "11", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 11.0, "suffix": "None" } }, "start": 0, "type": "BinaryExpression", "type": "BinaryExpression" } }, { "commentStart": 6529, "end": 0, "key": { "commentStart": 6529, "end": 0, "name": "radius", "start": 0, "type": "Identifier" }, "start": 0, "type": "ObjectProperty", "value": { "commentStart": 6538, "end": 0, "left": { "commentStart": 6538, "end": 0, "raw": ".288", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 0.288, "suffix": "None" } }, "operator": "*", "right": { "abs_path": false, "commentStart": 6545, "end": 0, "name": { "commentStart": 6545, "end": 0, "name": "scale", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name", "type": "Name" }, "start": 0, "type": "BinaryExpression", "type": "BinaryExpression" } } ], "start": 0, "type": "ObjectExpression", "type": "ObjectExpression" }, { "commentStart": 6561, "end": 0, "start": 0, "type": "PipeSubstitution", "type": "PipeSubstitution" } ], "callee": { "abs_path": false, "commentStart": 6442, "end": 0, "name": { "commentStart": 6442, "end": 0, "name": "arc", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name" }, "commentStart": 6442, "end": 0, "start": 0, "type": "CallExpression", "type": "CallExpression" }, { "arguments": [], "callee": { "abs_path": false, "commentStart": 6571, "end": 0, "name": { "commentStart": 6571, "end": 0, "name": "close", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name" }, "commentStart": 6571, "end": 0, "start": 0, "type": "CallExpression", "type": "CallExpression" }, { "arguments": [ { "type": "LabeledArg", "label": { "commentStart": 6594, "end": 0, "name": "length", "start": 0, "type": "Identifier" }, "arg": { "argument": { "abs_path": false, "commentStart": 6604, "end": 0, "name": { "commentStart": 6604, "end": 0, "name": "depth", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name", "type": "Name" }, "commentStart": 6603, "end": 0, "operator": "-", "start": 0, "type": "UnaryExpression", "type": "UnaryExpression" } } ], "callee": { "abs_path": false, "commentStart": 6586, "end": 0, "name": { "commentStart": 6586, "end": 0, "name": "extrude", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name" }, "commentStart": 6586, "end": 0, "start": 0, "type": "CallExpressionKw", "type": "CallExpressionKw", "unlabeled": null }, { "arguments": [ { "type": "LabeledArg", "label": { "commentStart": 6629, "end": 0, "name": "color", "start": 0, "type": "Identifier" }, "arg": { "abs_path": false, "commentStart": 6637, "end": 0, "name": { "commentStart": 6637, "end": 0, "name": "baseColor", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name", "type": "Name" } } ], "callee": { "abs_path": false, "commentStart": 6618, "end": 0, "name": { "commentStart": 6618, "end": 0, "name": "appearance", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name" }, "commentStart": 6618, "end": 0, "start": 0, "type": "CallExpressionKw", "type": "CallExpressionKw", "unlabeled": null } ], "commentStart": 6116, "end": 0, "start": 0, "type": "PipeExpression", "type": "PipeExpression" }, "start": 0, "type": "VariableDeclarator" }, "end": 0, "kind": "const", "start": 0, "type": "VariableDeclaration", "type": "VariableDeclaration" }, { "commentStart": 6647, "declaration": { "commentStart": 6651, "end": 0, "id": { "commentStart": 6651, "end": 0, "name": "o", "start": 0, "type": "Identifier" }, "init": { "body": [ { "arguments": [ { "abs_path": false, "commentStart": 6669, "end": 0, "name": { "commentStart": 6669, "end": 0, "name": "plane002", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name", "type": "Name" } ], "callee": { "abs_path": false, "commentStart": 6655, "end": 0, "name": { "commentStart": 6655, "end": 0, "name": "startSketchOn", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name" }, "commentStart": 6655, "end": 0, "start": 0, "type": "CallExpression", "type": "CallExpression" }, { "arguments": [ { "commentStart": 6701, "elements": [ { "commentStart": 6712, "end": 0, "left": { "commentStart": 6712, "end": 0, "left": { "commentStart": 6712, "end": 0, "raw": ".16", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 0.16, "suffix": "None" } }, "operator": "*", "right": { "abs_path": false, "commentStart": 6718, "end": 0, "name": { "commentStart": 6718, "end": 0, "name": "scale", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name", "type": "Name" }, "start": 0, "type": "BinaryExpression", "type": "BinaryExpression" }, "operator": "+", "right": { "commentStart": 6726, "computed": false, "end": 0, "object": { "commentStart": 6726, "end": 0, "name": "origin", "start": 0, "type": "Identifier", "type": "Identifier" }, "property": { "commentStart": 6733, "end": 0, "raw": "0", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 0.0, "suffix": "None" } }, "start": 0, "type": "MemberExpression", "type": "MemberExpression" }, "start": 0, "type": "BinaryExpression", "type": "BinaryExpression" }, { "commentStart": 6746, "end": 0, "left": { "commentStart": 6746, "end": 0, "left": { "commentStart": 6746, "end": 0, "raw": ".079", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 0.079, "suffix": "None" } }, "operator": "*", "right": { "abs_path": false, "commentStart": 6753, "end": 0, "name": { "commentStart": 6753, "end": 0, "name": "scale", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name", "type": "Name" }, "start": 0, "type": "BinaryExpression", "type": "BinaryExpression" }, "operator": "+", "right": { "commentStart": 6761, "computed": false, "end": 0, "object": { "commentStart": 6761, "end": 0, "name": "origin", "start": 0, "type": "Identifier", "type": "Identifier" }, "property": { "commentStart": 6768, "end": 0, "raw": "1", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 1.0, "suffix": "None" } }, "start": 0, "type": "MemberExpression", "type": "MemberExpression" }, "start": 0, "type": "BinaryExpression", "type": "BinaryExpression" } ], "end": 0, "start": 0, "type": "ArrayExpression", "type": "ArrayExpression" }, { "commentStart": 6781, "end": 0, "start": 0, "type": "PipeSubstitution", "type": "PipeSubstitution" } ], "callee": { "abs_path": false, "commentStart": 6686, "end": 0, "name": { "commentStart": 6686, "end": 0, "name": "startProfileAt", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name" }, "commentStart": 6686, "end": 0, "start": 0, "type": "CallExpression", "type": "CallExpression" }, { "arguments": [ { "commentStart": 6795, "end": 0, "properties": [ { "commentStart": 6806, "end": 0, "key": { "commentStart": 6806, "end": 0, "name": "angleStart", "start": 0, "type": "Identifier" }, "start": 0, "type": "ObjectProperty", "value": { "commentStart": 6819, "end": 0, "left": { "commentStart": 6819, "end": 0, "left": { "commentStart": 6819, "end": 0, "raw": "47.15", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 47.15, "suffix": "None" } }, "operator": "+", "right": { "commentStart": 6827, "end": 0, "raw": "6", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 6.0, "suffix": "None" } }, "start": 0, "type": "BinaryExpression", "type": "BinaryExpression" }, "operator": "-", "right": { "commentStart": 6831, "end": 0, "raw": "180", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 180.0, "suffix": "None" } }, "start": 0, "type": "BinaryExpression", "type": "BinaryExpression" } }, { "commentStart": 6845, "end": 0, "key": { "commentStart": 6845, "end": 0, "name": "angleEnd", "start": 0, "type": "Identifier" }, "start": 0, "type": "ObjectProperty", "value": { "commentStart": 6856, "end": 0, "left": { "commentStart": 6856, "end": 0, "raw": "47.15", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 47.15, "suffix": "None" } }, "operator": "-", "right": { "commentStart": 6864, "end": 0, "raw": "6", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 6.0, "suffix": "None" } }, "start": 0, "type": "BinaryExpression", "type": "BinaryExpression" } }, { "commentStart": 6876, "end": 0, "key": { "commentStart": 6876, "end": 0, "name": "radius", "start": 0, "type": "Identifier" }, "start": 0, "type": "ObjectProperty", "value": { "commentStart": 6885, "end": 0, "left": { "commentStart": 6885, "end": 0, "raw": ".525", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 0.525, "suffix": "None" } }, "operator": "*", "right": { "abs_path": false, "commentStart": 6892, "end": 0, "name": { "commentStart": 6892, "end": 0, "name": "scale", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name", "type": "Name" }, "start": 0, "type": "BinaryExpression", "type": "BinaryExpression" } } ], "start": 0, "type": "ObjectExpression", "type": "ObjectExpression" }, { "commentStart": 6908, "end": 0, "start": 0, "type": "PipeSubstitution", "type": "PipeSubstitution" } ], "callee": { "abs_path": false, "commentStart": 6791, "end": 0, "name": { "commentStart": 6791, "end": 0, "name": "arc", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name" }, "commentStart": 6791, "end": 0, "start": 0, "type": "CallExpression", "type": "CallExpression" }, { "arguments": [ { "commentStart": 6929, "end": 0, "properties": [ { "commentStart": 6931, "end": 0, "key": { "commentStart": 6931, "end": 0, "name": "angle", "start": 0, "type": "Identifier" }, "start": 0, "type": "ObjectProperty", "value": { "commentStart": 6939, "end": 0, "raw": "47.15", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 47.15, "suffix": "None" } } }, { "commentStart": 6946, "end": 0, "key": { "commentStart": 6946, "end": 0, "name": "length", "start": 0, "type": "Identifier" }, "start": 0, "type": "ObjectProperty", "value": { "commentStart": 6955, "end": 0, "left": { "argument": { "commentStart": 6956, "end": 0, "raw": ".24", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 0.24, "suffix": "None" } }, "commentStart": 6955, "end": 0, "operator": "-", "start": 0, "type": "UnaryExpression", "type": "UnaryExpression" }, "operator": "*", "right": { "abs_path": false, "commentStart": 6962, "end": 0, "name": { "commentStart": 6962, "end": 0, "name": "scale", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name", "type": "Name" }, "start": 0, "type": "BinaryExpression", "type": "BinaryExpression" } } ], "start": 0, "type": "ObjectExpression", "type": "ObjectExpression" }, { "commentStart": 6971, "end": 0, "start": 0, "type": "PipeSubstitution", "type": "PipeSubstitution" } ], "callee": { "abs_path": false, "commentStart": 6918, "end": 0, "name": { "commentStart": 6918, "end": 0, "name": "angledLine", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name" }, "commentStart": 6918, "end": 0, "start": 0, "type": "CallExpression", "type": "CallExpression" }, { "arguments": [ { "commentStart": 6985, "end": 0, "properties": [ { "commentStart": 6996, "end": 0, "key": { "commentStart": 6996, "end": 0, "name": "angleStart", "start": 0, "type": "Identifier" }, "start": 0, "type": "ObjectProperty", "value": { "commentStart": 7009, "end": 0, "left": { "commentStart": 7009, "end": 0, "raw": "47.15", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 47.15, "suffix": "None" } }, "operator": "-", "right": { "commentStart": 7017, "end": 0, "raw": "11", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 11.0, "suffix": "None" } }, "start": 0, "type": "BinaryExpression", "type": "BinaryExpression" } }, { "commentStart": 7030, "end": 0, "key": { "commentStart": 7030, "end": 0, "name": "angleEnd", "start": 0, "type": "Identifier" }, "start": 0, "type": "ObjectProperty", "value": { "commentStart": 7041, "end": 0, "left": { "commentStart": 7041, "end": 0, "left": { "commentStart": 7041, "end": 0, "raw": "47.15", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 47.15, "suffix": "None" } }, "operator": "+", "right": { "commentStart": 7049, "end": 0, "raw": "11", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 11.0, "suffix": "None" } }, "start": 0, "type": "BinaryExpression", "type": "BinaryExpression" }, "operator": "-", "right": { "commentStart": 7054, "end": 0, "raw": "180", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 180.0, "suffix": "None" } }, "start": 0, "type": "BinaryExpression", "type": "BinaryExpression" } }, { "commentStart": 7068, "end": 0, "key": { "commentStart": 7068, "end": 0, "name": "radius", "start": 0, "type": "Identifier" }, "start": 0, "type": "ObjectProperty", "value": { "commentStart": 7077, "end": 0, "left": { "commentStart": 7077, "end": 0, "raw": ".288", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 0.288, "suffix": "None" } }, "operator": "*", "right": { "abs_path": false, "commentStart": 7084, "end": 0, "name": { "commentStart": 7084, "end": 0, "name": "scale", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name", "type": "Name" }, "start": 0, "type": "BinaryExpression", "type": "BinaryExpression" } } ], "start": 0, "type": "ObjectExpression", "type": "ObjectExpression" }, { "commentStart": 7100, "end": 0, "start": 0, "type": "PipeSubstitution", "type": "PipeSubstitution" } ], "callee": { "abs_path": false, "commentStart": 6981, "end": 0, "name": { "commentStart": 6981, "end": 0, "name": "arc", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name" }, "commentStart": 6981, "end": 0, "start": 0, "type": "CallExpression", "type": "CallExpression" }, { "arguments": [], "callee": { "abs_path": false, "commentStart": 7110, "end": 0, "name": { "commentStart": 7110, "end": 0, "name": "close", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name" }, "commentStart": 7110, "end": 0, "start": 0, "type": "CallExpression", "type": "CallExpression" }, { "arguments": [ { "type": "LabeledArg", "label": { "commentStart": 7133, "end": 0, "name": "length", "start": 0, "type": "Identifier" }, "arg": { "argument": { "abs_path": false, "commentStart": 7143, "end": 0, "name": { "commentStart": 7143, "end": 0, "name": "depth", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name", "type": "Name" }, "commentStart": 7142, "end": 0, "operator": "-", "start": 0, "type": "UnaryExpression", "type": "UnaryExpression" } } ], "callee": { "abs_path": false, "commentStart": 7125, "end": 0, "name": { "commentStart": 7125, "end": 0, "name": "extrude", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name" }, "commentStart": 7125, "end": 0, "start": 0, "type": "CallExpressionKw", "type": "CallExpressionKw", "unlabeled": null }, { "arguments": [ { "type": "LabeledArg", "label": { "commentStart": 7168, "end": 0, "name": "color", "start": 0, "type": "Identifier" }, "arg": { "abs_path": false, "commentStart": 7176, "end": 0, "name": { "commentStart": 7176, "end": 0, "name": "baseColor", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name", "type": "Name" } } ], "callee": { "abs_path": false, "commentStart": 7157, "end": 0, "name": { "commentStart": 7157, "end": 0, "name": "appearance", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name" }, "commentStart": 7157, "end": 0, "start": 0, "type": "CallExpressionKw", "type": "CallExpressionKw", "unlabeled": null } ], "commentStart": 6655, "end": 0, "start": 0, "type": "PipeExpression", "type": "PipeExpression" }, "start": 0, "type": "VariableDeclarator" }, "end": 0, "kind": "const", "start": 0, "type": "VariableDeclaration", "type": "VariableDeclaration" }, { "argument": { "abs_path": false, "commentStart": 7196, "end": 0, "name": { "commentStart": 7196, "end": 0, "name": "o", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name", "type": "Name" }, "commentStart": 7189, "end": 0, "start": 0, "type": "ReturnStatement", "type": "ReturnStatement" } ], "commentStart": 6099, "end": 0, "nonCodeMeta": { "nonCodeNodes": { "0": [ { "commentStart": 6647, "end": 0, "start": 0, "type": "NonCodeNode", "value": { "type": "newLine" } } ] }, "startNodes": [] }, "start": 0 }, "commentStart": 6076, "end": 0, "params": [ { "type": "Parameter", "identifier": { "commentStart": 6077, "end": 0, "name": "origin", "start": 0, "type": "Identifier" } }, { "type": "Parameter", "identifier": { "commentStart": 6085, "end": 0, "name": "scale", "start": 0, "type": "Identifier" } }, { "type": "Parameter", "identifier": { "commentStart": 6092, "end": 0, "name": "depth", "start": 0, "type": "Identifier" } } ], "start": 0, "type": "FunctionExpression", "type": "FunctionExpression" }, "start": 0, "type": "VariableDeclarator" }, "end": 0, "kind": "fn", "preComments": [ "", "", "// Define a function to draw the ZOO 'O'" ], "start": 0, "type": "VariableDeclaration", "type": "VariableDeclaration" }, { "commentStart": 7199, "end": 0, "expression": { "arguments": [ { "commentStart": 7274, "elements": [ { "commentStart": 7275, "end": 0, "raw": "2.3", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 2.3, "suffix": "None" } }, { "commentStart": 7280, "end": 0, "raw": "1.3", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 1.3, "suffix": "None" } } ], "end": 0, "start": 0, "type": "ArrayExpression", "type": "ArrayExpression" }, { "commentStart": 7286, "end": 0, "raw": ".4", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 0.4, "suffix": "None" } }, { "commentStart": 7290, "end": 0, "raw": "0.03", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 0.03, "suffix": "None" } } ], "callee": { "abs_path": false, "commentStart": 7272, "end": 0, "name": { "commentStart": 7272, "end": 0, "name": "z", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name" }, "commentStart": 7272, "end": 0, "start": 0, "type": "CallExpression", "type": "CallExpression" }, "preComments": [ "", "", "// Place the Z logo on the Z key. Place the O logo on the O and P keys" ], "start": 0, "type": "ExpressionStatement", "type": "ExpressionStatement" }, { "commentStart": 7296, "end": 0, "expression": { "arguments": [ { "commentStart": 7298, "elements": [ { "commentStart": 7299, "end": 0, "raw": "8.71", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 8.71, "suffix": "None" } }, { "commentStart": 7305, "end": 0, "left": { "abs_path": false, "commentStart": 7305, "end": 0, "name": { "commentStart": 7305, "end": 0, "name": "row4", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name", "type": "Name" }, "operator": "+", "right": { "commentStart": 7312, "end": 0, "raw": ".08", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 0.08, "suffix": "None" } }, "start": 0, "type": "BinaryExpression", "type": "BinaryExpression" } ], "end": 0, "start": 0, "type": "ArrayExpression", "type": "ArrayExpression" }, { "commentStart": 7318, "end": 0, "raw": "0.4", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 0.4, "suffix": "None" } }, { "commentStart": 7323, "end": 0, "raw": "0.03", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 0.03, "suffix": "None" } } ], "callee": { "abs_path": false, "commentStart": 7296, "end": 0, "name": { "commentStart": 7296, "end": 0, "name": "o", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name" }, "commentStart": 7296, "end": 0, "start": 0, "type": "CallExpression", "type": "CallExpression" }, "start": 0, "type": "ExpressionStatement", "type": "ExpressionStatement" }, { "commentStart": 7329, "end": 0, "expression": { "arguments": [ { "commentStart": 7331, "elements": [ { "commentStart": 7332, "end": 0, "left": { "commentStart": 7332, "end": 0, "raw": "8.71", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 8.71, "suffix": "None" } }, "operator": "+", "right": { "commentStart": 7339, "end": 0, "raw": "0.9", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 0.9, "suffix": "None" } }, "start": 0, "type": "BinaryExpression", "type": "BinaryExpression" }, { "commentStart": 7344, "end": 0, "left": { "abs_path": false, "commentStart": 7344, "end": 0, "name": { "commentStart": 7344, "end": 0, "name": "row4", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name", "type": "Name" }, "operator": "+", "right": { "commentStart": 7351, "end": 0, "raw": ".08", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 0.08, "suffix": "None" } }, "start": 0, "type": "BinaryExpression", "type": "BinaryExpression" } ], "end": 0, "start": 0, "type": "ArrayExpression", "type": "ArrayExpression" }, { "commentStart": 7357, "end": 0, "raw": "0.4", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 0.4, "suffix": "None" } }, { "commentStart": 7362, "end": 0, "raw": "0.03", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 0.03, "suffix": "None" } } ], "callee": { "abs_path": false, "commentStart": 7329, "end": 0, "name": { "commentStart": 7329, "end": 0, "name": "o", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name" }, "commentStart": 7329, "end": 0, "start": 0, "type": "CallExpression", "type": "CallExpression" }, "start": 0, "type": "ExpressionStatement", "type": "ExpressionStatement" } ], "commentStart": 0, "end": 0, "innerAttrs": [ { "commentStart": 0, "end": 0, "name": { "commentStart": 77, "end": 0, "name": "settings", "start": 0, "type": "Identifier" }, "preComments": [ "// Zoo Keyboard", "// A custom keyboard with Zoo brand lettering", "", "", "// Set Units" ], "properties": [ { "commentStart": 86, "end": 0, "key": { "commentStart": 86, "end": 0, "name": "defaultLengthUnit", "start": 0, "type": "Identifier" }, "start": 0, "type": "ObjectProperty", "value": { "abs_path": false, "commentStart": 106, "end": 0, "name": { "commentStart": 106, "end": 0, "name": "in", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name", "type": "Name" } } ], "start": 0, "type": "Annotation" } ], "nonCodeMeta": { "nonCodeNodes": {}, "startNodes": [ { "commentStart": 109, "end": 0, "start": 0, "type": "NonCodeNode", "value": { "type": "newLine" } } ] }, "start": 0 } }