{
  "Uuid": "3c9d0464-8643-5ffe-96e5-ab1769818209",
  "IsCustomNode": false,
  "Description": "",
  "Name": "BuildingPadGradeCalculator",
  "ElementResolver": {
    "ResolutionMap": {}
  },
  "Inputs": [
    {
      "Id": "0de23e2b47dc473aa04660767a7ad38f",
      "Name": "Use exact boundary(only usable with low number of convex pads)",
      "Type": "boolean",
      "Value": "false",
      "Description": "Selection between a true and false."
    },
    {
      "Id": "668dc78b7932417bb4872b7a7d1fff68",
      "Name": "Grading slope in degree",
      "Type": "number",
      "Value": "45",
      "MaximumValue": 90.0,
      "MinimumValue": 0.0,
      "StepValue": 5.0,
      "NumberType": "Double",
      "Description": "A slider that produces numeric values."
    },
    {
      "Id": "3777f66e2b294917a661bba39b80d1c2",
      "Name": "Use level and offset as bottom",
      "Type": "boolean",
      "Value": "true",
      "Description": "Selection between a true and false."
    },
    {
      "Id": "375561998ecd496ca91dc33c39504454",
      "Name": "Bottom offset",
      "Type": "number",
      "Value": "-26",
      "NumberType": "Double",
      "Description": "Creates a number."
    }
  ],
  "Outputs": [],
  "Nodes": [
    {
      "ConcreteType": "Dynamo.Graph.Nodes.ZeroTouch.DSFunction, DynamoCore",
      "NodeType": "FunctionNode",
      "FunctionSignature": "Revit.Elements.Category.ByName@string",
      "Id": "12c56b727c1b48229ec7e0e82b39d80a",
      "Inputs": [
        {
          "Id": "7770760455474fc6a311a65b893ba06f",
          "Name": "name",
          "Description": "The built in category name.\n\nstring",
          "UsingDefaultValue": false,
          "Level": 2,
          "UseLevels": false,
          "KeepListStructure": false
        }
      ],
      "Outputs": [
        {
          "Id": "cc9a7baa0b8046a6931174cc243b1ff5",
          "Name": "Category",
          "Description": "Category",
          "UsingDefaultValue": false,
          "Level": 2,
          "UseLevels": false,
          "KeepListStructure": false
        }
      ],
      "Replication": "Auto",
      "Description": "Gets a Revit category by the built-in category name.\n\nCategory.ByName (name: string): Category"
    },
    {
      "ConcreteType": "Dynamo.Graph.Nodes.CodeBlockNodeModel, DynamoCore",
      "NodeType": "CodeBlockNode",
      "Code": "\"BuildingPad\";",
      "Id": "4176baefca444cb5a47eb70b851b1ae0",
      "Inputs": [],
      "Outputs": [
        {
          "Id": "2d5b9e85a5154dde900664baabaaa6cf",
          "Name": "",
          "Description": "Value of expression at line 1",
          "UsingDefaultValue": false,
          "Level": 2,
          "UseLevels": false,
          "KeepListStructure": false
        }
      ],
      "Replication": "Disabled",
      "Description": "Allows for DesignScript code to be authored directly"
    },
    {
      "ConcreteType": "DSRevitNodesUI.ElementsOfCategory, DSRevitNodesUI",
      "NodeType": "ExtensionNode",
      "Id": "7d1d729cdd0d42e295820e626ac52a10",
      "Inputs": [
        {
          "Id": "8284d577896e44cfbeda948c55478716",
          "Name": "Category",
          "Description": "The Category",
          "UsingDefaultValue": false,
          "Level": 2,
          "UseLevels": false,
          "KeepListStructure": false
        }
      ],
      "Outputs": [
        {
          "Id": "d105f8754f80460b8b9005f01b134cde",
          "Name": "Elements",
          "Description": "An element type.",
          "UsingDefaultValue": false,
          "Level": 2,
          "UseLevels": false,
          "KeepListStructure": false
        }
      ],
      "Replication": "Disabled",
      "Description": "Get all elements of the specified category from the model."
    },
    {
      "ConcreteType": "Dynamo.Graph.Nodes.ZeroTouch.DSFunction, DynamoCore",
      "NodeType": "FunctionNode",
      "FunctionSignature": "Revit.Elements.Element.Faces",
      "Id": "e0ee879593eb4cc8b82bad42c52a8705",
      "Inputs": [
        {
          "Id": "d4b6af5efc0a40e2a6fbd606f46c122c",
          "Name": "element",
          "Description": "Revit.Elements.Element",
          "UsingDefaultValue": false,
          "Level": 2,
          "UseLevels": false,
          "KeepListStructure": false
        }
      ],
      "Outputs": [
        {
          "Id": "b26323da49494a3b88d4dbd9e7996251",
          "Name": "Surface[]",
          "Description": "Surface[]",
          "UsingDefaultValue": false,
          "Level": 2,
          "UseLevels": false,
          "KeepListStructure": false
        }
      ],
      "Replication": "Auto",
      "Description": "The Faces in this Element\n\nElement.Faces: Surface[]"
    },
    {
      "ConcreteType": "Dynamo.Graph.Nodes.ZeroTouch.DSFunction, DynamoCore",
      "NodeType": "FunctionNode",
      "FunctionSignature": "Autodesk.DesignScript.Geometry.Surface.NormalAtParameter@double,double",
      "Id": "2d5757c9a54346a6bafc1400b50e4a43",
      "Inputs": [
        {
          "Id": "93198fab30054c438f9e0b3293992d8f",
          "Name": "surface",
          "Description": "Autodesk.DesignScript.Geometry.Surface",
          "UsingDefaultValue": false,
          "Level": 2,
          "UseLevels": false,
          "KeepListStructure": false
        },
        {
          "Id": "bd1a755f24cd4e4f8eb8d6e36c0763f5",
          "Name": "u",
          "Description": "double\nDefault value : 0",
          "UsingDefaultValue": true,
          "Level": 2,
          "UseLevels": false,
          "KeepListStructure": false
        },
        {
          "Id": "70b78e7847344c20a348b3342fa18d82",
          "Name": "v",
          "Description": "double\nDefault value : 0",
          "UsingDefaultValue": true,
          "Level": 2,
          "UseLevels": false,
          "KeepListStructure": false
        }
      ],
      "Outputs": [
        {
          "Id": "59ac3ef863af45e3a19fa953dfea32ab",
          "Name": "Vector",
          "Description": "Vector",
          "UsingDefaultValue": false,
          "Level": 2,
          "UseLevels": false,
          "KeepListStructure": false
        }
      ],
      "Replication": "Auto",
      "Description": "Return the normal Vector at specified U and V parameters.\n\nSurface.NormalAtParameter (u: double = 0, v: double = 0): Vector"
    },
    {
      "ConcreteType": "Dynamo.Graph.Nodes.CodeBlockNodeModel, DynamoCore",
      "NodeType": "CodeBlockNode",
      "Code": "0.5;",
      "Id": "0d943e8bf9674c6c81ab7802bf299c55",
      "Inputs": [],
      "Outputs": [
        {
          "Id": "a72190dab73d42f5bbd4223ddcdbd89e",
          "Name": "",
          "Description": "Value of expression at line 1",
          "UsingDefaultValue": false,
          "Level": 2,
          "UseLevels": false,
          "KeepListStructure": false
        }
      ],
      "Replication": "Disabled",
      "Description": "Allows for DesignScript code to be authored directly"
    },
    {
      "ConcreteType": "Dynamo.Graph.Nodes.ZeroTouch.DSFunction, DynamoCore",
      "NodeType": "FunctionNode",
      "FunctionSignature": "DSCore.List.AllIndicesOf@var[]..[],var",
      "Id": "72e9cc3771f24448a2c23f37d6f4eb04",
      "Inputs": [
        {
          "Id": "9dac7833822041e98beba595195a9aa7",
          "Name": "list",
          "Description": "List to search in. If this argument is null, an empty list is returned.\n\nvar[]..[]",
          "UsingDefaultValue": false,
          "Level": 2,
          "UseLevels": true,
          "KeepListStructure": false
        },
        {
          "Id": "50d6f0a48c4246339721954af2acd6de",
          "Name": "item",
          "Description": "Item to look for.\n\nvar",
          "UsingDefaultValue": false,
          "Level": 2,
          "UseLevels": false,
          "KeepListStructure": false
        }
      ],
      "Outputs": [
        {
          "Id": "37fedb1cbd47451e8f4b364677bb92ff",
          "Name": "var[]..[]",
          "Description": "A list of zero-based indices of all occurrences of the item if found, or an empty list if the item does not exist in the list.",
          "UsingDefaultValue": false,
          "Level": 2,
          "UseLevels": false,
          "KeepListStructure": false
        }
      ],
      "Replication": "Auto",
      "Description": "Given an item, returns the zero-based indices of all its occurrences in the list. If the item cannot be found, an empty list is returned.\n\nList.AllIndicesOf (list: var[]..[], item: var): var[]..[]"
    },
    {
      "ConcreteType": "Dynamo.Graph.Nodes.CodeBlockNodeModel, DynamoCore",
      "NodeType": "CodeBlockNode",
      "Code": "-1.00;",
      "Id": "d6ae5fc63cd04acbbb9097b1cb1bc8bd",
      "Inputs": [],
      "Outputs": [
        {
          "Id": "6f537dab5dae4fca9df927fe760372c3",
          "Name": "",
          "Description": "Value of expression at line 1",
          "UsingDefaultValue": false,
          "Level": 2,
          "UseLevels": false,
          "KeepListStructure": false
        }
      ],
      "Replication": "Disabled",
      "Description": "Allows for DesignScript code to be authored directly"
    },
    {
      "ConcreteType": "Dynamo.Graph.Nodes.CodeBlockNodeModel, DynamoCore",
      "NodeType": "CodeBlockNode",
      "Code": "a.Z;\n0;",
      "Id": "5d3dba97d78b401d93d1f1e29998e468",
      "Inputs": [
        {
          "Id": "7882922b200a48dc9ec20c7cf755a7c4",
          "Name": "a",
          "Description": "a",
          "UsingDefaultValue": false,
          "Level": 2,
          "UseLevels": false,
          "KeepListStructure": false
        }
      ],
      "Outputs": [
        {
          "Id": "8c53393f1012418a8f8a9b1ff6fbcfea",
          "Name": "",
          "Description": "Value of expression at line 1",
          "UsingDefaultValue": false,
          "Level": 2,
          "UseLevels": false,
          "KeepListStructure": false
        },
        {
          "Id": "2b34d60023454c449f03809df3ea420e",
          "Name": "",
          "Description": "Value of expression at line 2",
          "UsingDefaultValue": false,
          "Level": 2,
          "UseLevels": false,
          "KeepListStructure": false
        }
      ],
      "Replication": "Disabled",
      "Description": "Allows for DesignScript code to be authored directly"
    },
    {
      "ConcreteType": "Dynamo.Graph.Nodes.ZeroTouch.DSFunction, DynamoCore",
      "NodeType": "FunctionNode",
      "FunctionSignature": "DSCore.List.GetItemAtIndex@var[]..[],int",
      "Id": "6bf897deae3a4f95b47aa362b87c8b8c",
      "Inputs": [
        {
          "Id": "36d1b920e00748cab9cd2ffaf3453607",
          "Name": "list",
          "Description": "List to fetch an item from.\n\nvar[]..[]",
          "UsingDefaultValue": false,
          "Level": 2,
          "UseLevels": true,
          "KeepListStructure": false
        },
        {
          "Id": "9556d9025a424fdc8fb3f7d48d004956",
          "Name": "index",
          "Description": "Index of the item to be fetched.\n\nint",
          "UsingDefaultValue": false,
          "Level": 2,
          "UseLevels": true,
          "KeepListStructure": false
        }
      ],
      "Outputs": [
        {
          "Id": "541cfe5e384f42aeb70cfd377ea05dbc",
          "Name": "item",
          "Description": "Item in the list at the given index.",
          "UsingDefaultValue": false,
          "Level": 2,
          "UseLevels": false,
          "KeepListStructure": false
        }
      ],
      "Replication": "Auto",
      "Description": "Returns an item from the given list that's located at the specified index.\n\nList.GetItemAtIndex (list: var[]..[], index: int): var[]..[]"
    },
    {
      "ConcreteType": "Dynamo.Graph.Nodes.ZeroTouch.DSFunction, DynamoCore",
      "NodeType": "FunctionNode",
      "FunctionSignature": "DSCore.List.Flatten@var[]..[],int",
      "Id": "05afac53cd7e49589bb5b4be916a5ab0",
      "Inputs": [
        {
          "Id": "167fb4188ac24e908cdc9851978f4079",
          "Name": "list",
          "Description": "List to flatten.\n\nvar[]..[]",
          "UsingDefaultValue": false,
          "Level": 2,
          "UseLevels": false,
          "KeepListStructure": false
        },
        {
          "Id": "a6f72778457a4e5c97060d33681fb75c",
          "Name": "amt",
          "Description": "Layers of nesting to remove.\n\nint\nDefault value : -1",
          "UsingDefaultValue": true,
          "Level": 2,
          "UseLevels": false,
          "KeepListStructure": false
        }
      ],
      "Outputs": [
        {
          "Id": "d33cb5eba9e544ab9a01126bff42ae19",
          "Name": "var[]..[]",
          "Description": "var[]..[]",
          "UsingDefaultValue": false,
          "Level": 2,
          "UseLevels": false,
          "KeepListStructure": false
        }
      ],
      "Replication": "Auto",
      "Description": "Flattens a nested list of lists by a certain amount.\n\nList.Flatten (list: var[]..[], amt: int = -1): var[]..[]"
    },
    {
      "ConcreteType": "Dynamo.Graph.Nodes.ZeroTouch.DSFunction, DynamoCore",
      "NodeType": "FunctionNode",
      "FunctionSignature": "Revit.Elements.Topography.Mesh",
      "Id": "4e7028693648482191464fb00b8cc6de",
      "Inputs": [
        {
          "Id": "81752dd289c840dc913895e3198ae581",
          "Name": "topography",
          "Description": "Revit.Elements.Topography",
          "UsingDefaultValue": false,
          "Level": 2,
          "UseLevels": false,
          "KeepListStructure": false
        }
      ],
      "Outputs": [
        {
          "Id": "c3541ba9fbf242ee982693d9ad723057",
          "Name": "Mesh",
          "Description": "Mesh",
          "UsingDefaultValue": false,
          "Level": 2,
          "UseLevels": false,
          "KeepListStructure": false
        }
      ],
      "Replication": "Auto",
      "Description": "Get the underlying triangular Mesh from the Topography\n\nTopography.Mesh: Mesh"
    },
    {
      "ConcreteType": "Dynamo.Graph.Nodes.ZeroTouch.DSFunction, DynamoCore",
      "NodeType": "FunctionNode",
      "FunctionSignature": "Revit.Elements.Topography.Points",
      "Id": "82cb3ce743a54443ba0f15eeb3211224",
      "Inputs": [
        {
          "Id": "c31d35e1dbc44cdc917be4ba461a7711",
          "Name": "topography",
          "Description": "Revit.Elements.Topography",
          "UsingDefaultValue": false,
          "Level": 2,
          "UseLevels": false,
          "KeepListStructure": false
        }
      ],
      "Outputs": [
        {
          "Id": "d29b3473509940cdbefa9d837405236b",
          "Name": "Point[]",
          "Description": "Point[]",
          "UsingDefaultValue": false,
          "Level": 2,
          "UseLevels": false,
          "KeepListStructure": false
        }
      ],
      "Replication": "Auto",
      "Description": "The set of points from which this TopographySurface is constructed.\n\nTopography.Points: Point[]"
    },
    {
      "ConcreteType": "Dynamo.Nodes.DSModelElementSelection, DSRevitNodesUI",
      "NodeType": "ExtensionNode",
      "InstanceId": [
        "7b3146ba-277b-4a61-a2ca-855f8728d1ae-000cb1c1"
      ],
      "Id": "3563efcde2524d3bb48edd17ffeb8343",
      "Inputs": [],
      "Outputs": [
        {
          "Id": "2c591e9b9a6b4fbb86758b29d03cee39",
          "Name": "Element",
          "Description": "The selected elements.",
          "UsingDefaultValue": false,
          "Level": 2,
          "UseLevels": false,
          "KeepListStructure": false
        }
      ],
      "Replication": "Disabled"
    },
    {
      "ConcreteType": "Dynamo.Graph.Nodes.ZeroTouch.DSFunction, DynamoCore",
      "NodeType": "FunctionNode",
      "FunctionSignature": "Revit.Elements.Element.GetParameterValueByName@string",
      "Id": "bbc39986480f4ca78518db40d16cb7c8",
      "Inputs": [
        {
          "Id": "a904c06458774fa2898e5028fa238285",
          "Name": "element",
          "Description": "Revit.Elements.Element",
          "UsingDefaultValue": false,
          "Level": 2,
          "UseLevels": false,
          "KeepListStructure": false
        },
        {
          "Id": "5a776683f8394448ade13736f9bb063b",
          "Name": "parameterName",
          "Description": "The name of the parameter whose value you want to obtain.\n\nstring",
          "UsingDefaultValue": false,
          "Level": 2,
          "UseLevels": false,
          "KeepListStructure": false
        }
      ],
      "Outputs": [
        {
          "Id": "6002b9521b3c4a08ae4c3c7139a3febd",
          "Name": "var[]..[]",
          "Description": "var[]..[]",
          "UsingDefaultValue": false,
          "Level": 2,
          "UseLevels": false,
          "KeepListStructure": false
        }
      ],
      "Replication": "Auto",
      "Description": "Get the value of one of the element's parameters.\n\nElement.GetParameterValueByName (parameterName: string): var[]..[]"
    },
    {
      "ConcreteType": "Dynamo.Graph.Nodes.CodeBlockNodeModel, DynamoCore",
      "NodeType": "CodeBlockNode",
      "Code": "\"Level\";",
      "Id": "853c6986b13147988a676e05845f0623",
      "Inputs": [],
      "Outputs": [
        {
          "Id": "7e714e30083c4a09873777ce88b8899d",
          "Name": "",
          "Description": "Value of expression at line 1",
          "UsingDefaultValue": false,
          "Level": 2,
          "UseLevels": false,
          "KeepListStructure": false
        }
      ],
      "Replication": "Disabled",
      "Description": "Allows for DesignScript code to be authored directly"
    },
    {
      "ConcreteType": "Dynamo.Graph.Nodes.ZeroTouch.DSFunction, DynamoCore",
      "NodeType": "FunctionNode",
      "FunctionSignature": "DSCore.Math.Round@double,int",
      "Id": "6bca9cfed86e4e15859a345a001f4930",
      "Inputs": [
        {
          "Id": "e693ed7bfb32430888e8cda90fea9f4e",
          "Name": "number",
          "Description": "Number to be rounded.\n\ndouble",
          "UsingDefaultValue": false,
          "Level": 2,
          "UseLevels": false,
          "KeepListStructure": false
        },
        {
          "Id": "c33259dd51d34c71894dda5f3a987caa",
          "Name": "digits",
          "Description": "Number of fractional digits in the return value.\n\nint",
          "UsingDefaultValue": false,
          "Level": 2,
          "UseLevels": false,
          "KeepListStructure": false
        }
      ],
      "Outputs": [
        {
          "Id": "1aa0c7f9c189464db08a4912c6ac8382",
          "Name": "number",
          "Description": "The number nearest to value that contains a number of fractional digits equal to digits.",
          "UsingDefaultValue": false,
          "Level": 2,
          "UseLevels": false,
          "KeepListStructure": false
        }
      ],
      "Replication": "Auto",
      "Description": "Rounds a number to a specified number of fractional digits.\n\nMath.Round (number: double, digits: int): double"
    },
    {
      "ConcreteType": "Dynamo.Graph.Nodes.ZeroTouch.DSFunction, DynamoCore",
      "NodeType": "FunctionNode",
      "FunctionSignature": "Autodesk.DesignScript.Geometry.Surface.PerimeterCurves",
      "Id": "f5e30a8486324398bc89364948db6087",
      "Inputs": [
        {
          "Id": "709d6d34199c4f959078f98b749bb19f",
          "Name": "surface",
          "Description": "Autodesk.DesignScript.Geometry.Surface",
          "UsingDefaultValue": false,
          "Level": 1,
          "UseLevels": false,
          "KeepListStructure": false
        }
      ],
      "Outputs": [
        {
          "Id": "a1e63ea26b52443eb9c2039e501dfda0",
          "Name": "Curve[]",
          "Description": "Curve[]",
          "UsingDefaultValue": false,
          "Level": 2,
          "UseLevels": false,
          "KeepListStructure": false
        }
      ],
      "Replication": "Auto",
      "Description": "Return all the boundary Curves of the Surface.\n\nSurface.PerimeterCurves ( ): Curve[]"
    },
    {
      "ConcreteType": "Dynamo.Graph.Nodes.ZeroTouch.DSFunction, DynamoCore",
      "NodeType": "FunctionNode",
      "FunctionSignature": "Autodesk.DesignScript.Geometry.Curve.StartPoint",
      "Id": "de59742727e74d618b40287727ac5c67",
      "Inputs": [
        {
          "Id": "df9ffa5b449e4c4aa285103a858771c9",
          "Name": "curve",
          "Description": "Autodesk.DesignScript.Geometry.Curve",
          "UsingDefaultValue": false,
          "Level": 2,
          "UseLevels": false,
          "KeepListStructure": false
        }
      ],
      "Outputs": [
        {
          "Id": "aaa31ffe5c284ae3914da49c8423d43b",
          "Name": "Point",
          "Description": "Point",
          "UsingDefaultValue": false,
          "Level": 2,
          "UseLevels": false,
          "KeepListStructure": false
        }
      ],
      "Replication": "Auto",
      "Description": "Get the start Point along the Curve\n\nCurve.StartPoint: Point"
    },
    {
      "ConcreteType": "DSRevitNodesUI.Levels, DSRevitNodesUI",
      "SelectedIndex": 1,
      "NodeType": "ExtensionNode",
      "Id": "82080a70a8d44212b1e3285b3e68b950",
      "Inputs": [],
      "Outputs": [
        {
          "Id": "3c7cf2b70a11493b90fe248b3249ddf0",
          "Name": "Levels",
          "Description": "The selected Levels",
          "UsingDefaultValue": false,
          "Level": 2,
          "UseLevels": false,
          "KeepListStructure": false
        }
      ],
      "Replication": "Disabled",
      "Description": "Select a level in the active document"
    },
    {
      "ConcreteType": "CoreNodeModels.Logic.If, CoreNodeModels",
      "NodeType": "ExtensionNode",
      "Id": "64d834d064684c2fbfebd70fd7570c49",
      "Inputs": [
        {
          "Id": "b6600faeedcb4c97bfba172344c6b60c",
          "Name": "test",
          "Description": "Test block",
          "UsingDefaultValue": false,
          "Level": 2,
          "UseLevels": false,
          "KeepListStructure": false
        },
        {
          "Id": "74ca726d0c2b46beb9a80cfcc60c9582",
          "Name": "true",
          "Description": "True block",
          "UsingDefaultValue": false,
          "Level": 2,
          "UseLevels": false,
          "KeepListStructure": false
        },
        {
          "Id": "0828cc92e5e943d8934c4506e566fc30",
          "Name": "false",
          "Description": "False block",
          "UsingDefaultValue": false,
          "Level": 2,
          "UseLevels": false,
          "KeepListStructure": false
        }
      ],
      "Outputs": [
        {
          "Id": "f588896714b740a3852df15bd007a26e",
          "Name": "result",
          "Description": "result",
          "UsingDefaultValue": false,
          "Level": 2,
          "UseLevels": false,
          "KeepListStructure": false
        }
      ],
      "Replication": "Disabled",
      "Description": "Conditional statement"
    },
    {
      "ConcreteType": "Dynamo.Graph.Nodes.CodeBlockNodeModel, DynamoCore",
      "NodeType": "CodeBlockNode",
      "Code": "null;\nfalse;",
      "Id": "a74cee54492146338381873445d14327",
      "Inputs": [],
      "Outputs": [
        {
          "Id": "c3187922c5d549028776f9cf64fd00b6",
          "Name": "",
          "Description": "Value of expression at line 1",
          "UsingDefaultValue": false,
          "Level": 2,
          "UseLevels": false,
          "KeepListStructure": false
        },
        {
          "Id": "659c1f6a70ff4a36adf5bfc605521bed",
          "Name": "",
          "Description": "Value of expression at line 2",
          "UsingDefaultValue": false,
          "Level": 2,
          "UseLevels": false,
          "KeepListStructure": false
        }
      ],
      "Replication": "Disabled",
      "Description": "Allows for DesignScript code to be authored directly"
    },
    {
      "ConcreteType": "Dynamo.Graph.Nodes.ZeroTouch.DSFunction, DynamoCore",
      "NodeType": "FunctionNode",
      "FunctionSignature": "Revit.Elements.Element.Id",
      "Id": "5af67a1a76484e80a3b2fbdf94f92220",
      "Inputs": [
        {
          "Id": "e3bc59f75896425d9d8a4216bf0c3f33",
          "Name": "element",
          "Description": "Revit.Elements.Element",
          "UsingDefaultValue": false,
          "Level": 2,
          "UseLevels": false,
          "KeepListStructure": false
        }
      ],
      "Outputs": [
        {
          "Id": "779c4cfdbf6d4072b2c6757d16895db2",
          "Name": "int",
          "Description": "int",
          "UsingDefaultValue": false,
          "Level": 2,
          "UseLevels": false,
          "KeepListStructure": false
        }
      ],
      "Replication": "Auto",
      "Description": "Get the Element Id for this element\n\nElement.Id: int"
    },
    {
      "ConcreteType": "Dynamo.Graph.Nodes.ZeroTouch.DSFunction, DynamoCore",
      "NodeType": "FunctionNode",
      "FunctionSignature": "Revit.Elements.Element.Id",
      "Id": "446d1d8b1a6c4fd293c15f7a0c915a8f",
      "Inputs": [
        {
          "Id": "37e4eb79fec64e50b4ae053e04f3d347",
          "Name": "element",
          "Description": "Revit.Elements.Element",
          "UsingDefaultValue": false,
          "Level": 2,
          "UseLevels": false,
          "KeepListStructure": false
        }
      ],
      "Outputs": [
        {
          "Id": "31d5b750ca074b239730886706dd2a0b",
          "Name": "int",
          "Description": "int",
          "UsingDefaultValue": false,
          "Level": 2,
          "UseLevels": false,
          "KeepListStructure": false
        }
      ],
      "Replication": "Auto",
      "Description": "Get the Element Id for this element\n\nElement.Id: int"
    },
    {
      "ConcreteType": "Dynamo.Graph.Nodes.ZeroTouch.DSFunction, DynamoCore",
      "NodeType": "FunctionNode",
      "FunctionSignature": "==@var[]..[],var[]..[]",
      "Id": "aba1eaeec0a5414d94714c86ecdd5bcd",
      "Inputs": [
        {
          "Id": "74f9667a42de43388d1b2c57b4de5b4b",
          "Name": "x",
          "Description": "x value.\n\nvar[]..[]",
          "UsingDefaultValue": false,
          "Level": 2,
          "UseLevels": false,
          "KeepListStructure": false
        },
        {
          "Id": "76375c658809480f99bcf30426ccbd78",
          "Name": "y",
          "Description": "y value.\n\nvar[]..[]",
          "UsingDefaultValue": false,
          "Level": 2,
          "UseLevels": false,
          "KeepListStructure": false
        }
      ],
      "Outputs": [
        {
          "Id": "9d1d2e98f76c42b385b00b7300a564da",
          "Name": "var[]..[]",
          "Description": "var[]..[]",
          "UsingDefaultValue": false,
          "Level": 2,
          "UseLevels": false,
          "KeepListStructure": false
        }
      ],
      "Replication": "Auto",
      "Description": "Equal x to y?\n\n== (x: var[]..[], y: var[]..[]): var[]..[]"
    },
    {
      "ConcreteType": "Dynamo.Graph.Nodes.ZeroTouch.DSFunction, DynamoCore",
      "NodeType": "FunctionNode",
      "FunctionSignature": "DSCore.List.Clean@var[]..[],bool",
      "Id": "db8f37ffdb7643f5a60c8228a5bc8435",
      "Inputs": [
        {
          "Id": "a5bcf825bdb345fd9465839165cea089",
          "Name": "list",
          "Description": "var[]..[]",
          "UsingDefaultValue": false,
          "Level": 2,
          "UseLevels": false,
          "KeepListStructure": false
        },
        {
          "Id": "63958790ee384960b065933bb50fe12d",
          "Name": "preserveIndices",
          "Description": "Provide an option to preserve the indices of the data such that non-trailing nulls may not be filtered out\n\nbool\nDefault value : true",
          "UsingDefaultValue": true,
          "Level": 2,
          "UseLevels": false,
          "KeepListStructure": false
        }
      ],
      "Outputs": [
        {
          "Id": "ee8e3b51047142fc81dcedc1789d6c4c",
          "Name": "var[]..[]",
          "Description": "A list cleaned of nulls and empty lists",
          "UsingDefaultValue": false,
          "Level": 2,
          "UseLevels": false,
          "KeepListStructure": false
        }
      ],
      "Replication": "Auto",
      "Description": "Cleans data of nulls and empty lists from a given list of arbitrary dimension\n\nList.Clean (list: var[]..[], preserveIndices: bool = true): var[]..[]"
    },
    {
      "ConcreteType": "Dynamo.Graph.Nodes.CodeBlockNodeModel, DynamoCore",
      "NodeType": "CodeBlockNode",
      "Code": "a.Z;",
      "Id": "6bd81e5fe8174ecdb4858af031579cd2",
      "Inputs": [
        {
          "Id": "a008cdfdc169403f8be2cafd1462561d",
          "Name": "a",
          "Description": "a",
          "UsingDefaultValue": false,
          "Level": 2,
          "UseLevels": false,
          "KeepListStructure": false
        }
      ],
      "Outputs": [
        {
          "Id": "656699f6276849939d6e357c9352c8b6",
          "Name": "",
          "Description": "Value of expression at line 1",
          "UsingDefaultValue": false,
          "Level": 2,
          "UseLevels": false,
          "KeepListStructure": false
        }
      ],
      "Replication": "Disabled",
      "Description": "Allows for DesignScript code to be authored directly"
    },
    {
      "ConcreteType": "Dynamo.Graph.Nodes.ZeroTouch.DSFunction, DynamoCore",
      "NodeType": "FunctionNode",
      "FunctionSignature": "DSCore.List.Flatten@var[]..[],int",
      "Id": "eabc8a1aa5e14836bd92c87320cdd30e",
      "Inputs": [
        {
          "Id": "813ff09ad609421796ab5ad0290e792f",
          "Name": "list",
          "Description": "List to flatten.\n\nvar[]..[]",
          "UsingDefaultValue": false,
          "Level": 2,
          "UseLevels": false,
          "KeepListStructure": false
        },
        {
          "Id": "e6e2b9b684984d7bb996739fdc3a32d0",
          "Name": "amt",
          "Description": "Layers of nesting to remove.\n\nint\nDefault value : -1",
          "UsingDefaultValue": true,
          "Level": 2,
          "UseLevels": false,
          "KeepListStructure": false
        }
      ],
      "Outputs": [
        {
          "Id": "eb609d1986104e6aa87ffc96a82aca36",
          "Name": "var[]..[]",
          "Description": "var[]..[]",
          "UsingDefaultValue": false,
          "Level": 2,
          "UseLevels": false,
          "KeepListStructure": false
        }
      ],
      "Replication": "Auto",
      "Description": "Flattens a nested list of lists by a certain amount.\n\nList.Flatten (list: var[]..[], amt: int = -1): var[]..[]"
    },
    {
      "ConcreteType": "Dynamo.Graph.Nodes.ZeroTouch.DSFunction, DynamoCore",
      "NodeType": "FunctionNode",
      "FunctionSignature": "DSCore.List.MinimumItem@var[]",
      "Id": "ede3ef117681417980e5053ed3c095ae",
      "Inputs": [
        {
          "Id": "7763ea0179b545208517020db47aead1",
          "Name": "list",
          "Description": "List to take the minimum value from.\n\nvar[]",
          "UsingDefaultValue": false,
          "Level": 2,
          "UseLevels": false,
          "KeepListStructure": false
        }
      ],
      "Outputs": [
        {
          "Id": "50633ce3ce9b47578135418ee9badae2",
          "Name": "min",
          "Description": "Minimum value from the list.",
          "UsingDefaultValue": false,
          "Level": 2,
          "UseLevels": false,
          "KeepListStructure": false
        }
      ],
      "Replication": "Auto",
      "Description": "Returns the minimum value from a list.\n\nList.MinimumItem (list: var[]): var[]..[]"
    },
    {
      "ConcreteType": "Dynamo.Graph.Nodes.CustomNodes.Function, DynamoCore",
      "FunctionSignature": "f3262378-975c-40f8-bf70-5867e7837b75",
      "FunctionType": "Graph",
      "NodeType": "FunctionNode",
      "Id": "459916609d414f13ac00dd41c7ff8b15",
      "Inputs": [
        {
          "Id": "00189326ec514b08b6bbfee1c3a5b022",
          "Name": "points",
          "Description": "var[]",
          "UsingDefaultValue": false,
          "Level": 2,
          "UseLevels": false,
          "KeepListStructure": false
        },
        {
          "Id": "0d1f5b7010ce4a5a97a7985d71f6f1c4",
          "Name": "elevation",
          "Description": "double\nDefault value : 0",
          "UsingDefaultValue": true,
          "Level": 2,
          "UseLevels": false,
          "KeepListStructure": false
        }
      ],
      "Outputs": [
        {
          "Id": "cfdb444a119b47dfadbf9ef2612a7280",
          "Name": "points",
          "Description": "return value",
          "UsingDefaultValue": false,
          "Level": 2,
          "UseLevels": false,
          "KeepListStructure": false
        }
      ],
      "Replication": "Auto",
      "Description": "Computes the XY convex hull of a given set of points based on the monotone chain algorithm."
    },
    {
      "ConcreteType": "Dynamo.Graph.Nodes.ZeroTouch.DSFunction, DynamoCore",
      "NodeType": "FunctionNode",
      "FunctionSignature": "Autodesk.DesignScript.Geometry.PolyCurve.ByPoints@Autodesk.DesignScript.Geometry.Point[],bool",
      "Id": "490467b4b4bb4255bb1032086dc1c414",
      "Inputs": [
        {
          "Id": "d884c82e636a44f4823bbeac7f07e44b",
          "Name": "points",
          "Description": "Points to make polycurve\n\nPoint[]",
          "UsingDefaultValue": false,
          "Level": 2,
          "UseLevels": false,
          "KeepListStructure": false
        },
        {
          "Id": "584455500bc14971b954bf5c92e30bcb",
          "Name": "connectLastToFirst",
          "Description": "make close or open polycurve\n\nbool\nDefault value : false",
          "UsingDefaultValue": true,
          "Level": 2,
          "UseLevels": false,
          "KeepListStructure": false
        }
      ],
      "Outputs": [
        {
          "Id": "9b54039b84964712b4bcd45f2473f6f9",
          "Name": "PolyCurve",
          "Description": "PolyCurve",
          "UsingDefaultValue": false,
          "Level": 2,
          "UseLevels": false,
          "KeepListStructure": false
        }
      ],
      "Replication": "Auto",
      "Description": "Make PolyCurve by connecting points. Set the 'connectLastToFirst' input to true to close the PolyCurve.\n\nPolyCurve.ByPoints (points: Point[], connectLastToFirst: bool = false): PolyCurve"
    },
    {
      "ConcreteType": "Dynamo.Graph.Nodes.CodeBlockNodeModel, DynamoCore",
      "NodeType": "CodeBlockNode",
      "Code": "true;",
      "Id": "8405376efba64825897199607ebd862b",
      "Inputs": [],
      "Outputs": [
        {
          "Id": "eedb959f2b634bcdb2bd7f9071ee643f",
          "Name": "",
          "Description": "Value of expression at line 1",
          "UsingDefaultValue": false,
          "Level": 2,
          "UseLevels": false,
          "KeepListStructure": false
        }
      ],
      "Replication": "Disabled",
      "Description": "Allows for DesignScript code to be authored directly"
    },
    {
      "ConcreteType": "Dynamo.Graph.Nodes.ZeroTouch.DSFunction, DynamoCore",
      "NodeType": "FunctionNode",
      "FunctionSignature": "Autodesk.DesignScript.Geometry.Curve.Project@Autodesk.DesignScript.Geometry.Geometry,Autodesk.DesignScript.Geometry.Vector",
      "Id": "0b4603c5f1044cd2a3cc01af592ff0bd",
      "Inputs": [
        {
          "Id": "f60414dd2859484caa3fdb1329ae423b",
          "Name": "curve",
          "Description": "Autodesk.DesignScript.Geometry.Curve",
          "UsingDefaultValue": false,
          "Level": 1,
          "UseLevels": false,
          "KeepListStructure": false
        },
        {
          "Id": "e0d70a21d8414ebdbc9120af191a0bad",
          "Name": "baseGeometry",
          "Description": "Geometry",
          "UsingDefaultValue": false,
          "Level": 2,
          "UseLevels": false,
          "KeepListStructure": false
        },
        {
          "Id": "a7c24c25a874446d967a313aea498a45",
          "Name": "projectionDirection",
          "Description": "Vector",
          "UsingDefaultValue": false,
          "Level": 2,
          "UseLevels": false,
          "KeepListStructure": false
        }
      ],
      "Outputs": [
        {
          "Id": "ad804cf8bd724415a89847a3fdfe22f5",
          "Name": "Geometry[]",
          "Description": "Geometry[]",
          "UsingDefaultValue": false,
          "Level": 2,
          "UseLevels": false,
          "KeepListStructure": false
        }
      ],
      "Replication": "Auto",
      "Description": "Project another piece of Geometry onto this along a given direction Vector\n\nCurve.Project (baseGeometry: Geometry, projectionDirection: Vector): Geometry[]"
    },
    {
      "ConcreteType": "Dynamo.Graph.Nodes.ZeroTouch.DSFunction, DynamoCore",
      "NodeType": "FunctionNode",
      "FunctionSignature": "DSCore.List.Flatten@var[]..[],int",
      "Id": "715bcdf34129480eb0f6cb448387243c",
      "Inputs": [
        {
          "Id": "2ac513328d574e38a24e9b6fff13b3de",
          "Name": "list",
          "Description": "List to flatten.\n\nvar[]..[]",
          "UsingDefaultValue": false,
          "Level": 2,
          "UseLevels": false,
          "KeepListStructure": false
        },
        {
          "Id": "03f981d7943e412fb7727c509f57969a",
          "Name": "amt",
          "Description": "Layers of nesting to remove.\n\nint\nDefault value : -1",
          "UsingDefaultValue": true,
          "Level": 2,
          "UseLevels": false,
          "KeepListStructure": false
        }
      ],
      "Outputs": [
        {
          "Id": "72e1f133d3934d9c96db70d2fd5705b6",
          "Name": "var[]..[]",
          "Description": "var[]..[]",
          "UsingDefaultValue": false,
          "Level": 2,
          "UseLevels": false,
          "KeepListStructure": false
        }
      ],
      "Replication": "Auto",
      "Description": "Flattens a nested list of lists by a certain amount.\n\nList.Flatten (list: var[]..[], amt: int = -1): var[]..[]"
    },
    {
      "ConcreteType": "Dynamo.Graph.Nodes.ZeroTouch.DSFunction, DynamoCore",
      "NodeType": "FunctionNode",
      "FunctionSignature": "Autodesk.DesignScript.Geometry.Vector.ZAxis",
      "Id": "2776d0df565048adaabcae9de23f5ac8",
      "Inputs": [],
      "Outputs": [
        {
          "Id": "5da2dc0c47ef455a890c676f666ed1af",
          "Name": "Vector",
          "Description": "Vector",
          "UsingDefaultValue": false,
          "Level": 2,
          "UseLevels": false,
          "KeepListStructure": false
        }
      ],
      "Replication": "Auto",
      "Description": "Get the canonical Z axis Vector (0,0,1)\n\nVector.ZAxis ( ): Vector"
    },
    {
      "ConcreteType": "Dynamo.Graph.Nodes.ZeroTouch.DSFunction, DynamoCore",
      "NodeType": "FunctionNode",
      "FunctionSignature": "Autodesk.DesignScript.Geometry.Plane.ByOriginNormal@Autodesk.DesignScript.Geometry.Point,Autodesk.DesignScript.Geometry.Vector",
      "Id": "14e39dcc16654241b25abd3f77ee4d18",
      "Inputs": [
        {
          "Id": "d52df73d2eb34db78be90896d98acf50",
          "Name": "origin",
          "Description": "Point\nDefault value : Autodesk.DesignScript.Geometry.Point.ByCoordinates(0, 0, 0)",
          "UsingDefaultValue": true,
          "Level": 2,
          "UseLevels": false,
          "KeepListStructure": false
        },
        {
          "Id": "0678c1e634b74132a2bd57a4bf76876e",
          "Name": "normal",
          "Description": "Vector\nDefault value : Autodesk.DesignScript.Geometry.Vector.ByCoordinates(0, 0, 1)",
          "UsingDefaultValue": true,
          "Level": 2,
          "UseLevels": false,
          "KeepListStructure": false
        }
      ],
      "Outputs": [
        {
          "Id": "51df608d7dfb4238a9d5479e04a38b9f",
          "Name": "Plane",
          "Description": "Plane",
          "UsingDefaultValue": false,
          "Level": 2,
          "UseLevels": false,
          "KeepListStructure": false
        }
      ],
      "Replication": "Auto",
      "Description": "Create a Plane centered at root Point, with input normal Vector.\n\nPlane.ByOriginNormal (origin: Point = Autodesk.DesignScript.Geometry.Point.ByCoordinates(0, 0, 0), normal: Vector = Autodesk.DesignScript.Geometry.Vector.ByCoordinates(0, 0, 1)): Plane"
    },
    {
      "ConcreteType": "Dynamo.Graph.Nodes.ZeroTouch.DSFunction, DynamoCore",
      "NodeType": "FunctionNode",
      "FunctionSignature": "Autodesk.DesignScript.Geometry.Point.ByCoordinates@double,double,double",
      "Id": "7a1c91ae68324c1e8a97eea4a9296e33",
      "Inputs": [
        {
          "Id": "aa2e03e9a70e46b59c3f14a2f0c27eae",
          "Name": "x",
          "Description": "double\nDefault value : 0",
          "UsingDefaultValue": true,
          "Level": 2,
          "UseLevels": false,
          "KeepListStructure": false
        },
        {
          "Id": "803870cda1914558aad0fd8f40f11479",
          "Name": "y",
          "Description": "double\nDefault value : 0",
          "UsingDefaultValue": true,
          "Level": 2,
          "UseLevels": false,
          "KeepListStructure": false
        },
        {
          "Id": "0883c974b9cc4e15b62cd1d73e86af5c",
          "Name": "z",
          "Description": "double\nDefault value : 0",
          "UsingDefaultValue": true,
          "Level": 2,
          "UseLevels": false,
          "KeepListStructure": false
        }
      ],
      "Outputs": [
        {
          "Id": "f093571af0194d52b47561845f92554b",
          "Name": "Point",
          "Description": "Point",
          "UsingDefaultValue": false,
          "Level": 2,
          "UseLevels": false,
          "KeepListStructure": false
        }
      ],
      "Replication": "Auto",
      "Description": "Form a Point given 3 cartesian coordinates\n\nPoint.ByCoordinates (x: double = 0, y: double = 0, z: double = 0): Point"
    },
    {
      "ConcreteType": "Dynamo.Graph.Nodes.CodeBlockNodeModel, DynamoCore",
      "NodeType": "CodeBlockNode",
      "Code": "0;",
      "Id": "e1fa300fe2ed42cebd0aa6eb1c306eab",
      "Inputs": [],
      "Outputs": [
        {
          "Id": "2539b7ff85994411b423a02e2bd4108b",
          "Name": "",
          "Description": "Value of expression at line 1",
          "UsingDefaultValue": false,
          "Level": 2,
          "UseLevels": false,
          "KeepListStructure": false
        }
      ],
      "Replication": "Disabled",
      "Description": "Allows for DesignScript code to be authored directly"
    },
    {
      "ConcreteType": "CoreNodeModels.HigherOrder.Map, CoreNodeModels",
      "NodeType": "ExtensionNode",
      "Id": "60e1febd4d934bb18ce627026e20dda7",
      "Inputs": [
        {
          "Id": "e35d9c46868a464f95dee4b766da2934",
          "Name": "list",
          "Description": "The list to map over.",
          "UsingDefaultValue": false,
          "Level": 2,
          "UseLevels": false,
          "KeepListStructure": false
        },
        {
          "Id": "243ce51fa7064820a4fe8962bd82eb0f",
          "Name": "f(x)",
          "Description": "The procedure used to map element",
          "UsingDefaultValue": false,
          "Level": 2,
          "UseLevels": false,
          "KeepListStructure": false
        }
      ],
      "Outputs": [
        {
          "Id": "1eb4c6d1bb16499c9965d45412565134",
          "Name": "mapped",
          "Description": "Mapped list",
          "UsingDefaultValue": false,
          "Level": 2,
          "UseLevels": false,
          "KeepListStructure": false
        }
      ],
      "Replication": "Disabled",
      "Description": "Applies a function over all elements of a list, generating a new list from the results."
    },
    {
      "ConcreteType": "CoreNodeModels.HigherOrder.Map, CoreNodeModels",
      "NodeType": "ExtensionNode",
      "Id": "614477f7b8e842aea02bbb3fc81a7ec8",
      "Inputs": [
        {
          "Id": "7027fcc761df49bab9471b0f436cada7",
          "Name": "list",
          "Description": "The list to map over.",
          "UsingDefaultValue": false,
          "Level": 2,
          "UseLevels": false,
          "KeepListStructure": false
        },
        {
          "Id": "41bd72e4ab0443b58292d646f9a5d3a8",
          "Name": "f(x)",
          "Description": "The procedure used to map element",
          "UsingDefaultValue": false,
          "Level": 2,
          "UseLevels": false,
          "KeepListStructure": false
        }
      ],
      "Outputs": [
        {
          "Id": "c5c9fb02390947f3b42b611f78f1c748",
          "Name": "mapped",
          "Description": "Mapped list",
          "UsingDefaultValue": false,
          "Level": 2,
          "UseLevels": false,
          "KeepListStructure": false
        }
      ],
      "Replication": "Disabled",
      "Description": "Applies a function over all elements of a list, generating a new list from the results."
    },
    {
      "ConcreteType": "Dynamo.Graph.Nodes.ZeroTouch.DSFunction, DynamoCore",
      "NodeType": "FunctionNode",
      "FunctionSignature": "DSCore.List.FirstItem@var[]..[]",
      "Id": "46b632c928ef48c69f3511d77bb9278f",
      "Inputs": [
        {
          "Id": "42129e37c3754f5ab9d91b1b3ca407e0",
          "Name": "list",
          "Description": "List to get the first item from.\n\nvar[]..[]",
          "UsingDefaultValue": false,
          "Level": 2,
          "UseLevels": true,
          "KeepListStructure": true
        }
      ],
      "Outputs": [
        {
          "Id": "4eec63c513bc4b81a5146a06e0132a29",
          "Name": "item",
          "Description": "First item in the list.",
          "UsingDefaultValue": false,
          "Level": 2,
          "UseLevels": false,
          "KeepListStructure": false
        }
      ],
      "Replication": "Auto",
      "Description": "Returns the first item in a list.\n\nList.FirstItem (list: var[]..[]): var[]..[]"
    },
    {
      "ConcreteType": "Dynamo.Graph.Nodes.ZeroTouch.DSFunction, DynamoCore",
      "NodeType": "FunctionNode",
      "FunctionSignature": "Autodesk.DesignScript.Geometry.PolyCurve.ByJoinedCurves@Autodesk.DesignScript.Geometry.Curve[],double",
      "Id": "1259c430042e4acaa27d9fa4194578f6",
      "Inputs": [
        {
          "Id": "7b52187c862e463ea42cf1ddf6e26cda",
          "Name": "curves",
          "Description": "Curves to join into polycurve\n\nCurve[]",
          "UsingDefaultValue": false,
          "Level": 2,
          "UseLevels": false,
          "KeepListStructure": false
        },
        {
          "Id": "5bf311cc13944e11b5e85c77f25813b0",
          "Name": "joinTolerance",
          "Description": "Tolerance to determine size of gap allowed between curves to be joined\n\ndouble\nDefault value : 0.001",
          "UsingDefaultValue": true,
          "Level": 2,
          "UseLevels": false,
          "KeepListStructure": false
        }
      ],
      "Outputs": [
        {
          "Id": "0f43d0fd49e84d7fab5a9e9f01a2fd1c",
          "Name": "PolyCurve",
          "Description": "PolyCurve",
          "UsingDefaultValue": false,
          "Level": 2,
          "UseLevels": false,
          "KeepListStructure": false
        }
      ],
      "Replication": "Auto",
      "Description": "Make PolyCurve by joining curves. Flips curve as needed for connectivity. Choose a preferred join tolerance between 1e-6 and 1e-3 units.\n\nPolyCurve.ByJoinedCurves (curves: Curve[], joinTolerance: double = 0.001): PolyCurve"
    },
    {
      "ConcreteType": "Dynamo.Graph.Nodes.ZeroTouch.DSFunction, DynamoCore",
      "NodeType": "FunctionNode",
      "FunctionSignature": "Autodesk.DesignScript.Geometry.Surface.ByPatch@Autodesk.DesignScript.Geometry.Curve",
      "Id": "ea8adb52c7ef487aa5f95b8ef7310c22",
      "Inputs": [
        {
          "Id": "a3c1c46ba8ef455fb241812317a8f4d3",
          "Name": "closedCurve",
          "Description": "Curve",
          "UsingDefaultValue": false,
          "Level": 2,
          "UseLevels": false,
          "KeepListStructure": false
        }
      ],
      "Outputs": [
        {
          "Id": "640cbeb9ba2e47138faa550144698287",
          "Name": "Surface",
          "Description": "Surface",
          "UsingDefaultValue": false,
          "Level": 2,
          "UseLevels": false,
          "KeepListStructure": false
        }
      ],
      "Replication": "Auto",
      "Description": "Create a Surface by filling in the interior of a closed boundary defined by input Curves.\n\nSurface.ByPatch (closedCurve: Curve): Surface"
    },
    {
      "ConcreteType": "Dynamo.Graph.Nodes.ZeroTouch.DSFunction, DynamoCore",
      "NodeType": "FunctionNode",
      "FunctionSignature": "Autodesk.DesignScript.Geometry.Surface.Thicken@double,bool",
      "Id": "953bced3ea3f4e6faacdb85aca212f4d",
      "Inputs": [
        {
          "Id": "b4a8e42834a249aa9fa3b6ade35b8305",
          "Name": "surface",
          "Description": "Autodesk.DesignScript.Geometry.Surface",
          "UsingDefaultValue": false,
          "Level": 2,
          "UseLevels": false,
          "KeepListStructure": false
        },
        {
          "Id": "f8e2837722a74c7ca10be1be0a44bfdb",
          "Name": "thickness",
          "Description": "double\nDefault value : 1",
          "UsingDefaultValue": true,
          "Level": 2,
          "UseLevels": false,
          "KeepListStructure": false
        },
        {
          "Id": "05430c5bb1e54d73bf06a6cdbcdf1a17",
          "Name": "both_sides",
          "Description": "bool\nDefault value : true",
          "UsingDefaultValue": true,
          "Level": 2,
          "UseLevels": false,
          "KeepListStructure": false
        }
      ],
      "Outputs": [
        {
          "Id": "c7d991594d634101b0fb4be3fb8ee883",
          "Name": "Solid",
          "Description": "Solid",
          "UsingDefaultValue": false,
          "Level": 2,
          "UseLevels": false,
          "KeepListStructure": false
        }
      ],
      "Replication": "Auto",
      "Description": "Thicken Surface into a Solid, extruding in the direction of Surface normals. If both_sides parameter is true, surface is thickened on both sides.\n\nSurface.Thicken (thickness: double = 1, both_sides: bool = true): Solid"
    },
    {
      "ConcreteType": "Dynamo.Graph.Nodes.CodeBlockNodeModel, DynamoCore",
      "NodeType": "CodeBlockNode",
      "Code": "false;",
      "Id": "68ef588d7aa4435a899054f711d9def3",
      "Inputs": [],
      "Outputs": [
        {
          "Id": "4ff0ff8ea2a743ecad211feacfb54d71",
          "Name": "",
          "Description": "Value of expression at line 1",
          "UsingDefaultValue": false,
          "Level": 2,
          "UseLevels": false,
          "KeepListStructure": false
        }
      ],
      "Replication": "Disabled",
      "Description": "Allows for DesignScript code to be authored directly"
    },
    {
      "ConcreteType": "Dynamo.Graph.Nodes.ZeroTouch.DSFunction, DynamoCore",
      "NodeType": "FunctionNode",
      "FunctionSignature": "Autodesk.DesignScript.Geometry.Solid.ByUnion@Autodesk.DesignScript.Geometry.Solid[]",
      "Id": "3b7031fea6994c71b038bb311318e849",
      "Inputs": [
        {
          "Id": "b99fbe7c20fe461e995d29fdcb610637",
          "Name": "solids",
          "Description": "A collection of solids\n\nSolid[]",
          "UsingDefaultValue": false,
          "Level": 2,
          "UseLevels": false,
          "KeepListStructure": false
        }
      ],
      "Outputs": [
        {
          "Id": "d1519447eede4019aa6562544a941a03",
          "Name": "Solid",
          "Description": "Solid",
          "UsingDefaultValue": false,
          "Level": 2,
          "UseLevels": false,
          "KeepListStructure": false
        }
      ],
      "Replication": "Auto",
      "Description": "Union a collection of solids into one solid\n\nSolid.ByUnion (solids: Solid[]): Solid"
    },
    {
      "ConcreteType": "Dynamo.Graph.Nodes.ZeroTouch.DSFunction, DynamoCore",
      "NodeType": "FunctionNode",
      "FunctionSignature": "Autodesk.DesignScript.Geometry.Geometry.Explode",
      "Id": "25fe26ea30354c24a0fe9680ff6550d0",
      "Inputs": [
        {
          "Id": "8c956746c7e84823984c34a59a941c43",
          "Name": "geometry",
          "Description": "Autodesk.DesignScript.Geometry.Geometry",
          "UsingDefaultValue": false,
          "Level": 2,
          "UseLevels": false,
          "KeepListStructure": false
        }
      ],
      "Outputs": [
        {
          "Id": "e898f65f473249a4ae0ea4a7ff6125d5",
          "Name": "Geometry[]",
          "Description": "Geometry[]",
          "UsingDefaultValue": false,
          "Level": 2,
          "UseLevels": false,
          "KeepListStructure": false
        }
      ],
      "Replication": "Auto",
      "Description": "Separates compound or non-separated elements into their component parts.\n\nGeometry.Explode ( ): Geometry[]"
    },
    {
      "ConcreteType": "Dynamo.Graph.Nodes.ZeroTouch.DSFunction, DynamoCore",
      "NodeType": "FunctionNode",
      "FunctionSignature": "DSCore.List.Flatten@var[]..[],int",
      "Id": "aed4c0b032764fad9938ab52d3aea514",
      "Inputs": [
        {
          "Id": "1b0de355af6240d798dc6b6f711a5ff7",
          "Name": "list",
          "Description": "List to flatten.\n\nvar[]..[]",
          "UsingDefaultValue": false,
          "Level": 2,
          "UseLevels": false,
          "KeepListStructure": false
        },
        {
          "Id": "9e4c243f0ad34a3eb73ea5ca539ee72c",
          "Name": "amt",
          "Description": "Layers of nesting to remove.\n\nint\nDefault value : -1",
          "UsingDefaultValue": true,
          "Level": 2,
          "UseLevels": false,
          "KeepListStructure": false
        }
      ],
      "Outputs": [
        {
          "Id": "ff0967f3607a4ffc9cac6b074f8d97f2",
          "Name": "var[]..[]",
          "Description": "var[]..[]",
          "UsingDefaultValue": false,
          "Level": 2,
          "UseLevels": false,
          "KeepListStructure": false
        }
      ],
      "Replication": "Auto",
      "Description": "Flattens a nested list of lists by a certain amount.\n\nList.Flatten (list: var[]..[], amt: int = -1): var[]..[]"
    },
    {
      "ConcreteType": "Dynamo.Graph.Nodes.CodeBlockNodeModel, DynamoCore",
      "NodeType": "CodeBlockNode",
      "Code": "0.5;",
      "Id": "137f014ebdf14f00a585e2759ddf4657",
      "Inputs": [],
      "Outputs": [
        {
          "Id": "a2789fb40d7249b4a938bea581d26c88",
          "Name": "",
          "Description": "Value of expression at line 1",
          "UsingDefaultValue": false,
          "Level": 2,
          "UseLevels": false,
          "KeepListStructure": false
        }
      ],
      "Replication": "Disabled",
      "Description": "Allows for DesignScript code to be authored directly"
    },
    {
      "ConcreteType": "Dynamo.Graph.Nodes.ZeroTouch.DSFunction, DynamoCore",
      "NodeType": "FunctionNode",
      "FunctionSignature": "Autodesk.DesignScript.Geometry.Surface.NormalAtParameter@double,double",
      "Id": "2fb47c50147a49eb89069f51a7d8b235",
      "Inputs": [
        {
          "Id": "32d97daa6b754b5f89e344def9bf242a",
          "Name": "surface",
          "Description": "Autodesk.DesignScript.Geometry.Surface",
          "UsingDefaultValue": false,
          "Level": 2,
          "UseLevels": false,
          "KeepListStructure": false
        },
        {
          "Id": "2d7d103e27b24032916aee8511c1ebc3",
          "Name": "u",
          "Description": "double\nDefault value : 0",
          "UsingDefaultValue": true,
          "Level": 2,
          "UseLevels": false,
          "KeepListStructure": false
        },
        {
          "Id": "66865e77f60841eea94f8bfe939816fc",
          "Name": "v",
          "Description": "double\nDefault value : 0",
          "UsingDefaultValue": true,
          "Level": 2,
          "UseLevels": false,
          "KeepListStructure": false
        }
      ],
      "Outputs": [
        {
          "Id": "abf1a2d5498b463b8c565dae1f3b5dff",
          "Name": "Vector",
          "Description": "Vector",
          "UsingDefaultValue": false,
          "Level": 2,
          "UseLevels": false,
          "KeepListStructure": false
        }
      ],
      "Replication": "Auto",
      "Description": "Return the normal Vector at specified U and V parameters.\n\nSurface.NormalAtParameter (u: double = 0, v: double = 0): Vector"
    },
    {
      "ConcreteType": "Dynamo.Graph.Nodes.CodeBlockNodeModel, DynamoCore",
      "NodeType": "CodeBlockNode",
      "Code": "a.Z;\n0;",
      "Id": "18c846097592488b840a7968654b536e",
      "Inputs": [
        {
          "Id": "940254862838414690322788f7e879d4",
          "Name": "a",
          "Description": "a",
          "UsingDefaultValue": false,
          "Level": 2,
          "UseLevels": false,
          "KeepListStructure": false
        }
      ],
      "Outputs": [
        {
          "Id": "4c0fe91eaa604d3e8ed599d5d15b325a",
          "Name": "",
          "Description": "Value of expression at line 1",
          "UsingDefaultValue": false,
          "Level": 2,
          "UseLevels": false,
          "KeepListStructure": false
        },
        {
          "Id": "4941dcd2706d4292b5db9715fbe3d763",
          "Name": "",
          "Description": "Value of expression at line 2",
          "UsingDefaultValue": false,
          "Level": 2,
          "UseLevels": false,
          "KeepListStructure": false
        }
      ],
      "Replication": "Disabled",
      "Description": "Allows for DesignScript code to be authored directly"
    },
    {
      "ConcreteType": "Dynamo.Graph.Nodes.ZeroTouch.DSFunction, DynamoCore",
      "NodeType": "FunctionNode",
      "FunctionSignature": "DSCore.Math.Round@double,int",
      "Id": "4567df32d15f49dc9ba80d4794652059",
      "Inputs": [
        {
          "Id": "663d77c026bd4b3b8e582dc70c42c046",
          "Name": "number",
          "Description": "Number to be rounded.\n\ndouble",
          "UsingDefaultValue": false,
          "Level": 2,
          "UseLevels": false,
          "KeepListStructure": false
        },
        {
          "Id": "3df72310d8a7403881834dab097c02b1",
          "Name": "digits",
          "Description": "Number of fractional digits in the return value.\n\nint",
          "UsingDefaultValue": false,
          "Level": 2,
          "UseLevels": false,
          "KeepListStructure": false
        }
      ],
      "Outputs": [
        {
          "Id": "f42f606aeb634a8aa16d1d04fd63cafa",
          "Name": "number",
          "Description": "The number nearest to value that contains a number of fractional digits equal to digits.",
          "UsingDefaultValue": false,
          "Level": 2,
          "UseLevels": false,
          "KeepListStructure": false
        }
      ],
      "Replication": "Auto",
      "Description": "Rounds a number to a specified number of fractional digits.\n\nMath.Round (number: double, digits: int): double"
    },
    {
      "ConcreteType": "Dynamo.Graph.Nodes.CodeBlockNodeModel, DynamoCore",
      "NodeType": "CodeBlockNode",
      "Code": "-1.00;",
      "Id": "d59293e13bc9446e8ad87e4e3cae3fbd",
      "Inputs": [],
      "Outputs": [
        {
          "Id": "dc5b87c676eb4891b350b30e2fa526aa",
          "Name": "",
          "Description": "Value of expression at line 1",
          "UsingDefaultValue": false,
          "Level": 2,
          "UseLevels": false,
          "KeepListStructure": false
        }
      ],
      "Replication": "Disabled",
      "Description": "Allows for DesignScript code to be authored directly"
    },
    {
      "ConcreteType": "Dynamo.Graph.Nodes.ZeroTouch.DSFunction, DynamoCore",
      "NodeType": "FunctionNode",
      "FunctionSignature": "DSCore.List.AllIndicesOf@var[]..[],var",
      "Id": "40901b6362ea4af194f1e1fe3133e771",
      "Inputs": [
        {
          "Id": "281cf4e2fce545c9b6bd110715a37bd8",
          "Name": "list",
          "Description": "List to search in. If this argument is null, an empty list is returned.\n\nvar[]..[]",
          "UsingDefaultValue": false,
          "Level": 2,
          "UseLevels": true,
          "KeepListStructure": false
        },
        {
          "Id": "0f3aaa0b567147f680b61f506dd629c9",
          "Name": "item",
          "Description": "Item to look for.\n\nvar",
          "UsingDefaultValue": false,
          "Level": 2,
          "UseLevels": false,
          "KeepListStructure": false
        }
      ],
      "Outputs": [
        {
          "Id": "2e186f904ee04780bb85025f64e858b8",
          "Name": "var[]..[]",
          "Description": "A list of zero-based indices of all occurrences of the item if found, or an empty list if the item does not exist in the list.",
          "UsingDefaultValue": false,
          "Level": 2,
          "UseLevels": false,
          "KeepListStructure": false
        }
      ],
      "Replication": "Auto",
      "Description": "Given an item, returns the zero-based indices of all its occurrences in the list. If the item cannot be found, an empty list is returned.\n\nList.AllIndicesOf (list: var[]..[], item: var): var[]..[]"
    },
    {
      "ConcreteType": "Dynamo.Graph.Nodes.ZeroTouch.DSFunction, DynamoCore",
      "NodeType": "FunctionNode",
      "FunctionSignature": "DSCore.List.GetItemAtIndex@var[]..[],int",
      "Id": "eb28a4c95eae4d98a2ad1e8bacf87f9c",
      "Inputs": [
        {
          "Id": "9a683d2f4a3641bca3ef6b44fa936658",
          "Name": "list",
          "Description": "List to fetch an item from.\n\nvar[]..[]",
          "UsingDefaultValue": false,
          "Level": 2,
          "UseLevels": true,
          "KeepListStructure": false
        },
        {
          "Id": "bfe6764d7aee47f6b9bdac9516f99944",
          "Name": "index",
          "Description": "Index of the item to be fetched.\n\nint",
          "UsingDefaultValue": false,
          "Level": 2,
          "UseLevels": true,
          "KeepListStructure": false
        }
      ],
      "Outputs": [
        {
          "Id": "c65056b5d2c04b8e90cbdf643bdea72b",
          "Name": "item",
          "Description": "Item in the list at the given index.",
          "UsingDefaultValue": false,
          "Level": 2,
          "UseLevels": false,
          "KeepListStructure": false
        }
      ],
      "Replication": "Auto",
      "Description": "Returns an item from the given list that's located at the specified index.\n\nList.GetItemAtIndex (list: var[]..[], index: int): var[]..[]"
    },
    {
      "ConcreteType": "Dynamo.Graph.Nodes.ZeroTouch.DSFunction, DynamoCore",
      "NodeType": "FunctionNode",
      "FunctionSignature": "Autodesk.DesignScript.Geometry.Surface.PerimeterCurves",
      "Id": "b6665b49cb04414b9246ef66b233fecb",
      "Inputs": [
        {
          "Id": "5061bc24f9974723933d460fc5b5321d",
          "Name": "surface",
          "Description": "Autodesk.DesignScript.Geometry.Surface",
          "UsingDefaultValue": false,
          "Level": 2,
          "UseLevels": false,
          "KeepListStructure": false
        }
      ],
      "Outputs": [
        {
          "Id": "2a7f916ca901442a864bbe5d6bf1db48",
          "Name": "Curve[]",
          "Description": "Curve[]",
          "UsingDefaultValue": false,
          "Level": 2,
          "UseLevels": false,
          "KeepListStructure": false
        }
      ],
      "Replication": "Auto",
      "Description": "Return all the boundary Curves of the Surface.\n\nSurface.PerimeterCurves ( ): Curve[]"
    },
    {
      "ConcreteType": "Dynamo.Graph.Nodes.ZeroTouch.DSFunction, DynamoCore",
      "NodeType": "FunctionNode",
      "FunctionSignature": "DSCore.List.Flatten@var[]..[],int",
      "Id": "21502070bfbf4e0fb95427988d589526",
      "Inputs": [
        {
          "Id": "b7504251a1f040c2910a5970ea057345",
          "Name": "list",
          "Description": "List to flatten.\n\nvar[]..[]",
          "UsingDefaultValue": false,
          "Level": 2,
          "UseLevels": false,
          "KeepListStructure": false
        },
        {
          "Id": "ec7ba48732f84474b4bc26028d50d482",
          "Name": "amt",
          "Description": "Layers of nesting to remove.\n\nint\nDefault value : -1",
          "UsingDefaultValue": true,
          "Level": 2,
          "UseLevels": false,
          "KeepListStructure": false
        }
      ],
      "Outputs": [
        {
          "Id": "9cb7bb50c1eb48aeb87fcb67831185db",
          "Name": "var[]..[]",
          "Description": "var[]..[]",
          "UsingDefaultValue": false,
          "Level": 2,
          "UseLevels": false,
          "KeepListStructure": false
        }
      ],
      "Replication": "Auto",
      "Description": "Flattens a nested list of lists by a certain amount.\n\nList.Flatten (list: var[]..[], amt: int = -1): var[]..[]"
    },
    {
      "ConcreteType": "Dynamo.Graph.Nodes.CodeBlockNodeModel, DynamoCore",
      "NodeType": "CodeBlockNode",
      "Code": "a.Z;",
      "Id": "6900a30334d541c2ac5b14d40d454d32",
      "Inputs": [
        {
          "Id": "6033ccb5e49441a58b4a78cf359510fe",
          "Name": "a",
          "Description": "a",
          "UsingDefaultValue": false,
          "Level": 2,
          "UseLevels": false,
          "KeepListStructure": false
        }
      ],
      "Outputs": [
        {
          "Id": "fcf28c2110dd4d37a74189bf1c285dd9",
          "Name": "",
          "Description": "Value of expression at line 1",
          "UsingDefaultValue": false,
          "Level": 2,
          "UseLevels": false,
          "KeepListStructure": false
        }
      ],
      "Replication": "Disabled",
      "Description": "Allows for DesignScript code to be authored directly"
    },
    {
      "ConcreteType": "Dynamo.Graph.Nodes.ZeroTouch.DSFunction, DynamoCore",
      "NodeType": "FunctionNode",
      "FunctionSignature": "DSCore.List.MaximumItem@var[]",
      "Id": "4c52e0fbf4cc4b04aa0f8be7112114dc",
      "Inputs": [
        {
          "Id": "9bc0752db35d4514a892d7a24d11c368",
          "Name": "list",
          "Description": "List to take the maximum value from.\n\nvar[]",
          "UsingDefaultValue": false,
          "Level": 2,
          "UseLevels": false,
          "KeepListStructure": false
        }
      ],
      "Outputs": [
        {
          "Id": "0dde38d59f634f1f9881b6eec08b1dcb",
          "Name": "max",
          "Description": "Maximum value from the list.",
          "UsingDefaultValue": false,
          "Level": 2,
          "UseLevels": false,
          "KeepListStructure": false
        }
      ],
      "Replication": "Auto",
      "Description": "Returns the maximum value from a list.\n\nList.MaximumItem (list: var[]): var[]..[]"
    },
    {
      "ConcreteType": "Dynamo.Graph.Nodes.ZeroTouch.DSFunction, DynamoCore",
      "NodeType": "FunctionNode",
      "FunctionSignature": "Autodesk.DesignScript.Geometry.Polygon.ByPoints@Autodesk.DesignScript.Geometry.Point[]",
      "Id": "d8357f13a5024c4ca4f858da38fd5625",
      "Inputs": [
        {
          "Id": "0a64fc49a3134882824a207b2949c8e4",
          "Name": "points",
          "Description": "Point[]",
          "UsingDefaultValue": false,
          "Level": 2,
          "UseLevels": false,
          "KeepListStructure": false
        }
      ],
      "Outputs": [
        {
          "Id": "dedb1a6c50f447aba762ca78370919b9",
          "Name": "Polygon",
          "Description": "Polygon",
          "UsingDefaultValue": false,
          "Level": 2,
          "UseLevels": false,
          "KeepListStructure": false
        }
      ],
      "Replication": "Auto",
      "Description": "Construct a Polygon Curve by connecting Points.\n\nPolygon.ByPoints (points: Point[]): Polygon"
    },
    {
      "ConcreteType": "Dynamo.Graph.Nodes.ZeroTouch.DSFunction, DynamoCore",
      "NodeType": "FunctionNode",
      "FunctionSignature": "DSCore.List.FirstItem@var[]..[]",
      "Id": "13b3603d46214dfaae5636a8e79c8192",
      "Inputs": [
        {
          "Id": "43c8d6fc21214327a05dc4f036eddf67",
          "Name": "list",
          "Description": "List to get the first item from.\n\nvar[]..[]",
          "UsingDefaultValue": false,
          "Level": 2,
          "UseLevels": false,
          "KeepListStructure": false
        }
      ],
      "Outputs": [
        {
          "Id": "ad035c50ed5c42c39cc47d1544075f7a",
          "Name": "item",
          "Description": "First item in the list.",
          "UsingDefaultValue": false,
          "Level": 2,
          "UseLevels": false,
          "KeepListStructure": false
        }
      ],
      "Replication": "Auto",
      "Description": "Returns the first item in a list.\n\nList.FirstItem (list: var[]..[]): var[]..[]"
    },
    {
      "ConcreteType": "Dynamo.Graph.Nodes.ZeroTouch.DSFunction, DynamoCore",
      "NodeType": "FunctionNode",
      "FunctionSignature": "DSCore.List.Flatten@var[]..[],int",
      "Id": "068a9f76b7b2448285339ed7f19baf2f",
      "Inputs": [
        {
          "Id": "9be4910361fa452bbb483dd37594cebd",
          "Name": "list",
          "Description": "List to flatten.\n\nvar[]..[]",
          "UsingDefaultValue": false,
          "Level": 2,
          "UseLevels": false,
          "KeepListStructure": false
        },
        {
          "Id": "dbcdf28454644226bb3cd4e5c4df2550",
          "Name": "amt",
          "Description": "Layers of nesting to remove.\n\nint\nDefault value : -1",
          "UsingDefaultValue": true,
          "Level": 2,
          "UseLevels": false,
          "KeepListStructure": false
        }
      ],
      "Outputs": [
        {
          "Id": "6b3cc08346fb4b8b92b4fe5a6955c6c9",
          "Name": "var[]..[]",
          "Description": "var[]..[]",
          "UsingDefaultValue": false,
          "Level": 2,
          "UseLevels": false,
          "KeepListStructure": false
        }
      ],
      "Replication": "Auto",
      "Description": "Flattens a nested list of lists by a certain amount.\n\nList.Flatten (list: var[]..[], amt: int = -1): var[]..[]"
    },
    {
      "ConcreteType": "Dynamo.Graph.Nodes.ZeroTouch.DSFunction, DynamoCore",
      "NodeType": "FunctionNode",
      "FunctionSignature": "Autodesk.DesignScript.Geometry.Curve.PointAtParameter@double",
      "Id": "d33deae0286c410b9bb28450a3a72a92",
      "Inputs": [
        {
          "Id": "135e2f476b1e4aa88bd9427681128f29",
          "Name": "curve",
          "Description": "Autodesk.DesignScript.Geometry.Curve",
          "UsingDefaultValue": false,
          "Level": 2,
          "UseLevels": false,
          "KeepListStructure": false
        },
        {
          "Id": "218bf73828d54c0ab673ee031d52124d",
          "Name": "param",
          "Description": "The parameter at which to evaluate\n\ndouble\nDefault value : 0",
          "UsingDefaultValue": true,
          "Level": 2,
          "UseLevels": false,
          "KeepListStructure": false
        }
      ],
      "Outputs": [
        {
          "Id": "58fd1b1549a84d31b2407785491c57dc",
          "Name": "Point",
          "Description": "Point",
          "UsingDefaultValue": false,
          "Level": 2,
          "UseLevels": false,
          "KeepListStructure": false
        }
      ],
      "Replication": "Auto",
      "Description": "Get a Point on the Curve at a specified parameter between StartParameter() and EndParameter()\n\nCurve.PointAtParameter (param: double = 0): Point"
    },
    {
      "ConcreteType": "Dynamo.Graph.Nodes.CodeBlockNodeModel, DynamoCore",
      "NodeType": "CodeBlockNode",
      "Code": "0.5;",
      "Id": "a0c28d767b224f88b98bd08df13be148",
      "Inputs": [],
      "Outputs": [
        {
          "Id": "26f60f7602c74cfe885b2f6d1614523b",
          "Name": "",
          "Description": "Value of expression at line 1",
          "UsingDefaultValue": false,
          "Level": 2,
          "UseLevels": false,
          "KeepListStructure": false
        }
      ],
      "Replication": "Disabled",
      "Description": "Allows for DesignScript code to be authored directly"
    },
    {
      "ConcreteType": "Dynamo.Graph.Nodes.ZeroTouch.DSFunction, DynamoCore",
      "NodeType": "FunctionNode",
      "FunctionSignature": "Autodesk.DesignScript.Geometry.Point.Add@Autodesk.DesignScript.Geometry.Vector",
      "Id": "67c8f8d85a4f428398090f9e138a8e62",
      "Inputs": [
        {
          "Id": "bc23c79d16e3432abc71822aee512e8e",
          "Name": "point",
          "Description": "Autodesk.DesignScript.Geometry.Point",
          "UsingDefaultValue": false,
          "Level": 2,
          "UseLevels": false,
          "KeepListStructure": false
        },
        {
          "Id": "6e3d2db7cafb4fbabc3e0418669fc734",
          "Name": "vectorToAdd",
          "Description": "Vector",
          "UsingDefaultValue": false,
          "Level": 2,
          "UseLevels": false,
          "KeepListStructure": false
        }
      ],
      "Outputs": [
        {
          "Id": "3688575e84524db6ab8239e3bed492b8",
          "Name": "Point",
          "Description": "Point",
          "UsingDefaultValue": false,
          "Level": 2,
          "UseLevels": false,
          "KeepListStructure": false
        }
      ],
      "Replication": "Auto",
      "Description": "Add a vector to a point. The same as Translate(Vector).\n\nPoint.Add (vectorToAdd: Vector): Point"
    },
    {
      "ConcreteType": "CoreNodeModels.CreateList, CoreNodeModels",
      "VariableInputPorts": true,
      "NodeType": "ExtensionNode",
      "Id": "179150644a7e4cd38f0140ec7c6e9dbc",
      "Inputs": [
        {
          "Id": "f86d38656c004312b74c2e87efdc6395",
          "Name": "item0",
          "Description": "Item Index #0",
          "UsingDefaultValue": false,
          "Level": 2,
          "UseLevels": false,
          "KeepListStructure": false
        },
        {
          "Id": "d16c9134a3af432598327169869f2599",
          "Name": "item1",
          "Description": "Item Index #1",
          "UsingDefaultValue": false,
          "Level": 2,
          "UseLevels": false,
          "KeepListStructure": false
        },
        {
          "Id": "82157c92544f49a2ade232627582f41e",
          "Name": "item2",
          "Description": "Item Index #2",
          "UsingDefaultValue": false,
          "Level": 2,
          "UseLevels": false,
          "KeepListStructure": false
        }
      ],
      "Outputs": [
        {
          "Id": "dc47f523a94542feac26b8158ba88310",
          "Name": "list",
          "Description": "A list",
          "UsingDefaultValue": false,
          "Level": 2,
          "UseLevels": false,
          "KeepListStructure": false
        }
      ],
      "Replication": "Disabled",
      "Description": "Makes a new list out of the given inputs"
    },
    {
      "ConcreteType": "Dynamo.Graph.Nodes.ZeroTouch.DSFunction, DynamoCore",
      "NodeType": "FunctionNode",
      "FunctionSignature": "-@var[]..[],var[]..[]",
      "Id": "04216dfd5625458e88d796e2673100af",
      "Inputs": [
        {
          "Id": "8bce279649e04f40807c3f661ee29a12",
          "Name": "x",
          "Description": "x value.\n\nvar[]..[]",
          "UsingDefaultValue": false,
          "Level": 2,
          "UseLevels": false,
          "KeepListStructure": false
        },
        {
          "Id": "21f37a8ff508418cb5d227a08d0ca72c",
          "Name": "y",
          "Description": "y value.\n\nvar[]..[]",
          "UsingDefaultValue": false,
          "Level": 2,
          "UseLevels": false,
          "KeepListStructure": false
        }
      ],
      "Outputs": [
        {
          "Id": "f92c11470b2a422ea6fd55387931ecbf",
          "Name": "var[]..[]",
          "Description": "var[]..[]",
          "UsingDefaultValue": false,
          "Level": 2,
          "UseLevels": false,
          "KeepListStructure": false
        }
      ],
      "Replication": "Auto",
      "Description": "x subtract y.\n\n- (x: var[]..[], y: var[]..[]): var[]..[]"
    },
    {
      "ConcreteType": "Dynamo.Graph.Nodes.ZeroTouch.DSFunction, DynamoCore",
      "NodeType": "FunctionNode",
      "FunctionSignature": "Autodesk.DesignScript.Geometry.Vector.ByCoordinates@double,double,double",
      "Id": "bb108d6e654b4ee8be01418caec6c1bf",
      "Inputs": [
        {
          "Id": "07363b825c034c78971fb21396751cd6",
          "Name": "x",
          "Description": "X coordinate\n\ndouble\nDefault value : 0",
          "UsingDefaultValue": true,
          "Level": 2,
          "UseLevels": false,
          "KeepListStructure": false
        },
        {
          "Id": "ff1f57985cf04bd297af241c9b57756d",
          "Name": "y",
          "Description": "Y coordinate\n\ndouble\nDefault value : 0",
          "UsingDefaultValue": true,
          "Level": 2,
          "UseLevels": false,
          "KeepListStructure": false
        },
        {
          "Id": "2417c304a385435f97646ac076dcaa49",
          "Name": "z",
          "Description": "Z coordinate\n\ndouble\nDefault value : 0",
          "UsingDefaultValue": true,
          "Level": 2,
          "UseLevels": false,
          "KeepListStructure": false
        }
      ],
      "Outputs": [
        {
          "Id": "eece51b2c27e46d390f5ac3c9097a155",
          "Name": "Vector",
          "Description": "Vector",
          "UsingDefaultValue": false,
          "Level": 2,
          "UseLevels": false,
          "KeepListStructure": false
        }
      ],
      "Replication": "Auto",
      "Description": "Form a Vector by 3 Euclidean coordinates\n\nVector.ByCoordinates (x: double = 0, y: double = 0, z: double = 0): Vector"
    },
    {
      "ConcreteType": "Dynamo.Graph.Nodes.CodeBlockNodeModel, DynamoCore",
      "NodeType": "CodeBlockNode",
      "Code": "0;",
      "Id": "ee69dfa3ed7a4762b95fc25053c34cde",
      "Inputs": [],
      "Outputs": [
        {
          "Id": "4d97a491c6f54509bee7dfde67c2c5bc",
          "Name": "",
          "Description": "Value of expression at line 1",
          "UsingDefaultValue": false,
          "Level": 2,
          "UseLevels": false,
          "KeepListStructure": false
        }
      ],
      "Replication": "Disabled",
      "Description": "Allows for DesignScript code to be authored directly"
    },
    {
      "ConcreteType": "Dynamo.Graph.Nodes.ZeroTouch.DSFunction, DynamoCore",
      "NodeType": "FunctionNode",
      "FunctionSignature": "Autodesk.DesignScript.Geometry.Point.Add@Autodesk.DesignScript.Geometry.Vector",
      "Id": "b1b9279772064c59b925e5a8378c208f",
      "Inputs": [
        {
          "Id": "d5a36457ed1b4d63b828e294112efa48",
          "Name": "point",
          "Description": "Autodesk.DesignScript.Geometry.Point",
          "UsingDefaultValue": false,
          "Level": 2,
          "UseLevels": false,
          "KeepListStructure": false
        },
        {
          "Id": "2c8401f81eae436789c201775fb2e5b7",
          "Name": "vectorToAdd",
          "Description": "Vector",
          "UsingDefaultValue": false,
          "Level": 2,
          "UseLevels": false,
          "KeepListStructure": false
        }
      ],
      "Outputs": [
        {
          "Id": "f55f64f13e504fd1912a4b679871fcab",
          "Name": "Point",
          "Description": "Point",
          "UsingDefaultValue": false,
          "Level": 2,
          "UseLevels": false,
          "KeepListStructure": false
        }
      ],
      "Replication": "Auto",
      "Description": "Add a vector to a point. The same as Translate(Vector).\n\nPoint.Add (vectorToAdd: Vector): Point"
    },
    {
      "ConcreteType": "Dynamo.Graph.Nodes.ZeroTouch.DSFunction, DynamoCore",
      "NodeType": "FunctionNode",
      "FunctionSignature": "Autodesk.DesignScript.Geometry.PolyCurve.Curves",
      "Id": "22f1120c32bf4ec988a175332bb35754",
      "Inputs": [
        {
          "Id": "9af7aaf866c94f9a9e08ff08d656142a",
          "Name": "polyCurve",
          "Description": "Autodesk.DesignScript.Geometry.PolyCurve",
          "UsingDefaultValue": false,
          "Level": 2,
          "UseLevels": false,
          "KeepListStructure": false
        }
      ],
      "Outputs": [
        {
          "Id": "1d3dacfed6f84dbb8a775fc5c5177284",
          "Name": "Curve[]",
          "Description": "Curve[]",
          "UsingDefaultValue": false,
          "Level": 2,
          "UseLevels": false,
          "KeepListStructure": false
        }
      ],
      "Replication": "Auto",
      "Description": "Returns curves of the polycurve\n\nPolyCurve.Curves ( ): Curve[]"
    },
    {
      "ConcreteType": "Dynamo.Graph.Nodes.ZeroTouch.DSFunction, DynamoCore",
      "NodeType": "FunctionNode",
      "FunctionSignature": "Autodesk.DesignScript.Geometry.Curve.NormalAtParameter@double",
      "Id": "fd153f00791b406ca07444d092f04963",
      "Inputs": [
        {
          "Id": "53a0b3700cd24c739da9cac4a82ef1dd",
          "Name": "curve",
          "Description": "Autodesk.DesignScript.Geometry.Curve",
          "UsingDefaultValue": false,
          "Level": 2,
          "UseLevels": false,
          "KeepListStructure": false
        },
        {
          "Id": "af7214b1075945e7b0b4f236375c0183",
          "Name": "param",
          "Description": "The parameter at which to evaluate\n\ndouble\nDefault value : 0",
          "UsingDefaultValue": true,
          "Level": 2,
          "UseLevels": false,
          "KeepListStructure": false
        }
      ],
      "Outputs": [
        {
          "Id": "f4bc9968b5c04d1aad105aa6cc04fefa",
          "Name": "Vector",
          "Description": "A Vector perpendicular to the curve at param",
          "UsingDefaultValue": false,
          "Level": 2,
          "UseLevels": false,
          "KeepListStructure": false
        }
      ],
      "Replication": "Auto",
      "Description": "Get a Vector perpendicular to the curve at a specified parameter between StartParameter() and EndParameter()\n\nCurve.NormalAtParameter (param: double = 0): Vector"
    },
    {
      "ConcreteType": "Dynamo.Graph.Nodes.ZeroTouch.DSFunction, DynamoCore",
      "NodeType": "FunctionNode",
      "FunctionSignature": "Autodesk.DesignScript.Geometry.Vector.Scale@double",
      "Id": "20e9ba0a469a4546a2c3b24c83868c99",
      "Inputs": [
        {
          "Id": "82d47db2679143f3b8fc2e65b4c0f1ba",
          "Name": "vector",
          "Description": "Autodesk.DesignScript.Geometry.Vector",
          "UsingDefaultValue": false,
          "Level": 2,
          "UseLevels": false,
          "KeepListStructure": false
        },
        {
          "Id": "d7fbc287545c486aa48f75dc778a5af7",
          "Name": "scale_factor",
          "Description": "double\nDefault value : 1",
          "UsingDefaultValue": true,
          "Level": 2,
          "UseLevels": false,
          "KeepListStructure": false
        }
      ],
      "Outputs": [
        {
          "Id": "d5a84b8cf18f4e1dade5a91d3d807f34",
          "Name": "Vector",
          "Description": "Vector",
          "UsingDefaultValue": false,
          "Level": 2,
          "UseLevels": false,
          "KeepListStructure": false
        }
      ],
      "Replication": "Auto",
      "Description": "Scale Vector uniformly around the origin\n\nVector.Scale (scale_factor: double = 1): Vector"
    },
    {
      "ConcreteType": "Dynamo.Graph.Nodes.ZeroTouch.DSFunction, DynamoCore",
      "NodeType": "FunctionNode",
      "FunctionSignature": "Autodesk.DesignScript.Geometry.PolyCurve.ByJoinedCurves@Autodesk.DesignScript.Geometry.Curve[],double",
      "Id": "8768f534f34c4de3ad1897079d1b2d59",
      "Inputs": [
        {
          "Id": "17cf3bd742ce4a5e9b0c6077151575be",
          "Name": "curves",
          "Description": "Curves to join into polycurve\n\nCurve[]",
          "UsingDefaultValue": false,
          "Level": 2,
          "UseLevels": false,
          "KeepListStructure": false
        },
        {
          "Id": "63f2b2f98c634ddb93220da24905c992",
          "Name": "joinTolerance",
          "Description": "Tolerance to determine size of gap allowed between curves to be joined\n\ndouble\nDefault value : 0.001",
          "UsingDefaultValue": true,
          "Level": 2,
          "UseLevels": false,
          "KeepListStructure": false
        }
      ],
      "Outputs": [
        {
          "Id": "1a4a070abdca4e898166170165bd3519",
          "Name": "PolyCurve",
          "Description": "PolyCurve",
          "UsingDefaultValue": false,
          "Level": 2,
          "UseLevels": false,
          "KeepListStructure": false
        }
      ],
      "Replication": "Auto",
      "Description": "Make PolyCurve by joining curves. Flips curve as needed for connectivity. Choose a preferred join tolerance between 1e-6 and 1e-3 units.\n\nPolyCurve.ByJoinedCurves (curves: Curve[], joinTolerance: double = 0.001): PolyCurve"
    },
    {
      "ConcreteType": "Dynamo.Graph.Nodes.ZeroTouch.DSFunction, DynamoCore",
      "NodeType": "FunctionNode",
      "FunctionSignature": "Autodesk.DesignScript.Geometry.PolySurface.BySweep@Autodesk.DesignScript.Geometry.Curve,Autodesk.DesignScript.Geometry.Curve[]",
      "Id": "804c4bf864a64dd486c05d5f634a7e4a",
      "Inputs": [
        {
          "Id": "ddf6f677c2e341b18fb6ca51d4d39ac3",
          "Name": "rail",
          "Description": "Curve to sweep along\n\nCurve",
          "UsingDefaultValue": false,
          "Level": 2,
          "UseLevels": false,
          "KeepListStructure": false
        },
        {
          "Id": "e2f850747c284cdb98f91652be0c0e27",
          "Name": "crossSection",
          "Description": "Sweep profile\n\nCurve[]",
          "UsingDefaultValue": false,
          "Level": 2,
          "UseLevels": false,
          "KeepListStructure": false
        }
      ],
      "Outputs": [
        {
          "Id": "5e0fe9c73791455495754088f8e4ade2",
          "Name": "PolySurface",
          "Description": "PolySurface",
          "UsingDefaultValue": false,
          "Level": 2,
          "UseLevels": false,
          "KeepListStructure": false
        }
      ],
      "Replication": "Auto",
      "Description": "Make Polysurface by sweeping curves along rail.\n\nPolySurface.BySweep (rail: Curve, crossSection: Curve[]): PolySurface"
    },
    {
      "ConcreteType": "Dynamo.Graph.Nodes.ZeroTouch.DSFunction, DynamoCore",
      "NodeType": "FunctionNode",
      "FunctionSignature": "Autodesk.DesignScript.Geometry.Solid.ByJoinedSurfaces@Autodesk.DesignScript.Geometry.Surface[]",
      "Id": "d530a1ac968e47099a549b6e57c21670",
      "Inputs": [
        {
          "Id": "ef0e7afa8531401aa8810e1c5bdf6c0c",
          "Name": "facesOfSolid",
          "Description": "Surface[]",
          "UsingDefaultValue": false,
          "Level": 2,
          "UseLevels": false,
          "KeepListStructure": false
        }
      ],
      "Outputs": [
        {
          "Id": "1e78bd397c754255913570e206b9e65b",
          "Name": "Solid",
          "Description": "Solid",
          "UsingDefaultValue": false,
          "Level": 2,
          "UseLevels": false,
          "KeepListStructure": false
        }
      ],
      "Replication": "Auto",
      "Description": "Create a solid by specifying it's component faces as Surfaces.\n\nSolid.ByJoinedSurfaces (facesOfSolid: Surface[]): Solid"
    },
    {
      "ConcreteType": "Dynamo.Graph.Nodes.CustomNodes.Function, DynamoCore",
      "FunctionSignature": "098af804-e737-4150-82b8-ef3bafda7248",
      "FunctionType": "Graph",
      "NodeType": "FunctionNode",
      "Id": "3938f19af90046959550cb5857331a22",
      "Inputs": [
        {
          "Id": "de549e0592884e618253eb477c59f8f6",
          "Name": "mesh",
          "Description": "var[]",
          "UsingDefaultValue": false,
          "Level": 2,
          "UseLevels": false,
          "KeepListStructure": false
        },
        {
          "Id": "1e679e4fb42247bebcbae425650b35d2",
          "Name": "mergeAll",
          "Description": "bool\nDefault value : false",
          "UsingDefaultValue": true,
          "Level": 2,
          "UseLevels": false,
          "KeepListStructure": false
        }
      ],
      "Outputs": [
        {
          "Id": "8252bb26857a4086855c7238d190a067",
          "Name": "PolySurface",
          "Description": "return value",
          "UsingDefaultValue": false,
          "Level": 2,
          "UseLevels": false,
          "KeepListStructure": false
        }
      ],
      "Replication": "Auto",
      "Description": "Converts a Dynamo mesh to a polysurface. Uses multithreading - optimized for 4 cores."
    },
    {
      "ConcreteType": "Dynamo.Graph.Nodes.ZeroTouch.DSFunction, DynamoCore",
      "NodeType": "FunctionNode",
      "FunctionSignature": "Autodesk.DesignScript.Geometry.PolySurface.Surfaces",
      "Id": "ee61cd7e6ef74d8395d35d1d11e47193",
      "Inputs": [
        {
          "Id": "2a31c696048b4c4e864a957c999ff8ea",
          "Name": "polySurface",
          "Description": "Autodesk.DesignScript.Geometry.PolySurface",
          "UsingDefaultValue": false,
          "Level": 2,
          "UseLevels": false,
          "KeepListStructure": false
        }
      ],
      "Outputs": [
        {
          "Id": "f376b32c497f48d9b191df15e83f3668",
          "Name": "Surface[]",
          "Description": "Surface[]",
          "UsingDefaultValue": false,
          "Level": 2,
          "UseLevels": false,
          "KeepListStructure": false
        }
      ],
      "Replication": "Auto",
      "Description": "Return new Surfaces representing the underlying Surfaces.\n\nPolySurface.Surfaces ( ): Surface[]"
    },
    {
      "ConcreteType": "Dynamo.Graph.Nodes.ZeroTouch.DSFunction, DynamoCore",
      "NodeType": "FunctionNode",
      "FunctionSignature": "DSCore.List.Flatten@var[]..[],int",
      "Id": "88e2938b18db407785d9c6b970a9b108",
      "Inputs": [
        {
          "Id": "c9849a901399423dae0bcaf1e7d09af7",
          "Name": "list",
          "Description": "List to flatten.\n\nvar[]..[]",
          "UsingDefaultValue": false,
          "Level": 2,
          "UseLevels": false,
          "KeepListStructure": false
        },
        {
          "Id": "45eed3a4f23b4c649bf480e902a30196",
          "Name": "amt",
          "Description": "Layers of nesting to remove.\n\nint\nDefault value : -1",
          "UsingDefaultValue": true,
          "Level": 2,
          "UseLevels": false,
          "KeepListStructure": false
        }
      ],
      "Outputs": [
        {
          "Id": "2b04313066d64ff2a7c4b7d4af6970dd",
          "Name": "var[]..[]",
          "Description": "var[]..[]",
          "UsingDefaultValue": false,
          "Level": 2,
          "UseLevels": false,
          "KeepListStructure": false
        }
      ],
      "Replication": "Auto",
      "Description": "Flattens a nested list of lists by a certain amount.\n\nList.Flatten (list: var[]..[], amt: int = -1): var[]..[]"
    },
    {
      "ConcreteType": "Dynamo.Graph.Nodes.ZeroTouch.DSFunction, DynamoCore",
      "NodeType": "FunctionNode",
      "FunctionSignature": "Autodesk.DesignScript.Geometry.Surface.PerimeterCurves",
      "Id": "03aee568fab7431a88866382ddb701b1",
      "Inputs": [
        {
          "Id": "cab12d6986434a799defd37b8b20b9a6",
          "Name": "surface",
          "Description": "Autodesk.DesignScript.Geometry.Surface",
          "UsingDefaultValue": false,
          "Level": 2,
          "UseLevels": false,
          "KeepListStructure": false
        }
      ],
      "Outputs": [
        {
          "Id": "3adb2afb9aa547c89ab87808c856b0d2",
          "Name": "Curve[]",
          "Description": "Curve[]",
          "UsingDefaultValue": false,
          "Level": 2,
          "UseLevels": false,
          "KeepListStructure": false
        }
      ],
      "Replication": "Auto",
      "Description": "Return all the boundary Curves of the Surface.\n\nSurface.PerimeterCurves ( ): Curve[]"
    },
    {
      "ConcreteType": "Dynamo.Graph.Nodes.ZeroTouch.DSFunction, DynamoCore",
      "NodeType": "FunctionNode",
      "FunctionSignature": "Autodesk.DesignScript.Geometry.Curve.Project@Autodesk.DesignScript.Geometry.Geometry,Autodesk.DesignScript.Geometry.Vector",
      "Id": "31abc244ce5b46cf9f807c1caa2f96fe",
      "Inputs": [
        {
          "Id": "6be562bcfac44e8087425f4b8e6341b8",
          "Name": "curve",
          "Description": "Autodesk.DesignScript.Geometry.Curve",
          "UsingDefaultValue": false,
          "Level": 2,
          "UseLevels": false,
          "KeepListStructure": false
        },
        {
          "Id": "8bdbe44fa3244d66a5d5d74cdfbc016a",
          "Name": "baseGeometry",
          "Description": "Geometry",
          "UsingDefaultValue": false,
          "Level": 2,
          "UseLevels": false,
          "KeepListStructure": false
        },
        {
          "Id": "de995e8fc4174d9eb2d0af6903e0de64",
          "Name": "projectionDirection",
          "Description": "Vector",
          "UsingDefaultValue": false,
          "Level": 2,
          "UseLevels": false,
          "KeepListStructure": false
        }
      ],
      "Outputs": [
        {
          "Id": "b04743dbad26472b8fc844b5f51af1fb",
          "Name": "Geometry[]",
          "Description": "Geometry[]",
          "UsingDefaultValue": false,
          "Level": 2,
          "UseLevels": false,
          "KeepListStructure": false
        }
      ],
      "Replication": "Auto",
      "Description": "Project another piece of Geometry onto this along a given direction Vector\n\nCurve.Project (baseGeometry: Geometry, projectionDirection: Vector): Geometry[]"
    },
    {
      "ConcreteType": "Dynamo.Graph.Nodes.ZeroTouch.DSFunction, DynamoCore",
      "NodeType": "FunctionNode",
      "FunctionSignature": "Autodesk.DesignScript.Geometry.Point.ByCoordinates@double,double,double",
      "Id": "abcdb397f89644b5b2cb0ecac7b97e38",
      "Inputs": [
        {
          "Id": "77ef7b6e5cc641de88ed2c86e3c9df87",
          "Name": "x",
          "Description": "double\nDefault value : 0",
          "UsingDefaultValue": true,
          "Level": 2,
          "UseLevels": false,
          "KeepListStructure": false
        },
        {
          "Id": "1c72e39d53f74402bd45dea95a447155",
          "Name": "y",
          "Description": "double\nDefault value : 0",
          "UsingDefaultValue": true,
          "Level": 2,
          "UseLevels": false,
          "KeepListStructure": false
        },
        {
          "Id": "bcde3b6eca154406bc88a31bc35a2db6",
          "Name": "z",
          "Description": "double\nDefault value : 0",
          "UsingDefaultValue": true,
          "Level": 2,
          "UseLevels": false,
          "KeepListStructure": false
        }
      ],
      "Outputs": [
        {
          "Id": "c8e7a0209ed1411b98d05e03e46b7846",
          "Name": "Point",
          "Description": "Point",
          "UsingDefaultValue": false,
          "Level": 2,
          "UseLevels": false,
          "KeepListStructure": false
        }
      ],
      "Replication": "Auto",
      "Description": "Form a Point given 3 cartesian coordinates\n\nPoint.ByCoordinates (x: double = 0, y: double = 0, z: double = 0): Point"
    },
    {
      "ConcreteType": "Dynamo.Graph.Nodes.CodeBlockNodeModel, DynamoCore",
      "NodeType": "CodeBlockNode",
      "Code": "0;",
      "Id": "dfdfbb09d2014fc1bb0491aada949d1d",
      "Inputs": [],
      "Outputs": [
        {
          "Id": "1d047cf33b284aa5bb0b96176354809e",
          "Name": "",
          "Description": "Value of expression at line 1",
          "UsingDefaultValue": false,
          "Level": 2,
          "UseLevels": false,
          "KeepListStructure": false
        }
      ],
      "Replication": "Disabled",
      "Description": "Allows for DesignScript code to be authored directly"
    },
    {
      "ConcreteType": "Dynamo.Graph.Nodes.ZeroTouch.DSFunction, DynamoCore",
      "NodeType": "FunctionNode",
      "FunctionSignature": "Autodesk.DesignScript.Geometry.Plane.ByOriginNormal@Autodesk.DesignScript.Geometry.Point,Autodesk.DesignScript.Geometry.Vector",
      "Id": "4c504a79de6c49c1993176d3f80d4b2d",
      "Inputs": [
        {
          "Id": "106e286219ee4e61874fad106831eebb",
          "Name": "origin",
          "Description": "Point\nDefault value : Autodesk.DesignScript.Geometry.Point.ByCoordinates(0, 0, 0)",
          "UsingDefaultValue": true,
          "Level": 2,
          "UseLevels": false,
          "KeepListStructure": false
        },
        {
          "Id": "feea5be52c6d4fb5b4249511fb540d8b",
          "Name": "normal",
          "Description": "Vector\nDefault value : Autodesk.DesignScript.Geometry.Vector.ByCoordinates(0, 0, 1)",
          "UsingDefaultValue": true,
          "Level": 2,
          "UseLevels": false,
          "KeepListStructure": false
        }
      ],
      "Outputs": [
        {
          "Id": "4639932b950840bb948a7d736620a731",
          "Name": "Plane",
          "Description": "Plane",
          "UsingDefaultValue": false,
          "Level": 2,
          "UseLevels": false,
          "KeepListStructure": false
        }
      ],
      "Replication": "Auto",
      "Description": "Create a Plane centered at root Point, with input normal Vector.\n\nPlane.ByOriginNormal (origin: Point = Autodesk.DesignScript.Geometry.Point.ByCoordinates(0, 0, 0), normal: Vector = Autodesk.DesignScript.Geometry.Vector.ByCoordinates(0, 0, 1)): Plane"
    },
    {
      "ConcreteType": "Dynamo.Graph.Nodes.ZeroTouch.DSFunction, DynamoCore",
      "NodeType": "FunctionNode",
      "FunctionSignature": "Autodesk.DesignScript.Geometry.Vector.ZAxis",
      "Id": "a9dbe95c53794c28a1d6e4f0a6c21953",
      "Inputs": [],
      "Outputs": [
        {
          "Id": "c4176159079a4dbaa71333087a75f428",
          "Name": "Vector",
          "Description": "Vector",
          "UsingDefaultValue": false,
          "Level": 2,
          "UseLevels": false,
          "KeepListStructure": false
        }
      ],
      "Replication": "Auto",
      "Description": "Get the canonical Z axis Vector (0,0,1)\n\nVector.ZAxis ( ): Vector"
    },
    {
      "ConcreteType": "Dynamo.Graph.Nodes.ZeroTouch.DSFunction, DynamoCore",
      "NodeType": "FunctionNode",
      "FunctionSignature": "DSCore.List.MinimumItem@var[]",
      "Id": "d65989bdcccb4a76a624e542cde6ec10",
      "Inputs": [
        {
          "Id": "7c3e3f11f05641a399bdb2e4c3c2a589",
          "Name": "list",
          "Description": "List to take the minimum value from.\n\nvar[]",
          "UsingDefaultValue": false,
          "Level": 2,
          "UseLevels": false,
          "KeepListStructure": false
        }
      ],
      "Outputs": [
        {
          "Id": "9cf925095065475b956a968c978d49f6",
          "Name": "min",
          "Description": "Minimum value from the list.",
          "UsingDefaultValue": false,
          "Level": 2,
          "UseLevels": false,
          "KeepListStructure": false
        }
      ],
      "Replication": "Auto",
      "Description": "Returns the minimum value from a list.\n\nList.MinimumItem (list: var[]): var[]..[]"
    },
    {
      "ConcreteType": "CoreNodeModels.CreateList, CoreNodeModels",
      "VariableInputPorts": true,
      "NodeType": "ExtensionNode",
      "Id": "bb0d967c213847128ef62e364cb4dab1",
      "Inputs": [
        {
          "Id": "bdc735636cf84ea7a5380e8bd7c61f0e",
          "Name": "item0",
          "Description": "Item Index #0",
          "UsingDefaultValue": false,
          "Level": 2,
          "UseLevels": false,
          "KeepListStructure": false
        },
        {
          "Id": "17a3a1aafa744ecf9cce64423383a33f",
          "Name": "item1",
          "Description": "Item Index #1",
          "UsingDefaultValue": false,
          "Level": 2,
          "UseLevels": false,
          "KeepListStructure": false
        }
      ],
      "Outputs": [
        {
          "Id": "1c18f01889704b37b1a65d53fa146359",
          "Name": "list",
          "Description": "A list",
          "UsingDefaultValue": false,
          "Level": 2,
          "UseLevels": false,
          "KeepListStructure": false
        }
      ],
      "Replication": "Disabled",
      "Description": "Makes a new list out of the given inputs"
    },
    {
      "ConcreteType": "Dynamo.Graph.Nodes.ZeroTouch.DSFunction, DynamoCore",
      "NodeType": "FunctionNode",
      "FunctionSignature": "DSCore.List.MinimumItem@var[]",
      "Id": "b4eb8f68b7cb4b5180ec13e86e8f8f5e",
      "Inputs": [
        {
          "Id": "f421cb56105f4f2bba4b462215409998",
          "Name": "list",
          "Description": "List to take the minimum value from.\n\nvar[]",
          "UsingDefaultValue": false,
          "Level": 2,
          "UseLevels": false,
          "KeepListStructure": false
        }
      ],
      "Outputs": [
        {
          "Id": "81ebfdb5d1b04406bb9b859dbcde8798",
          "Name": "min",
          "Description": "Minimum value from the list.",
          "UsingDefaultValue": false,
          "Level": 2,
          "UseLevels": false,
          "KeepListStructure": false
        }
      ],
      "Replication": "Auto",
      "Description": "Returns the minimum value from a list.\n\nList.MinimumItem (list: var[]): var[]..[]"
    },
    {
      "ConcreteType": "Dynamo.Graph.Nodes.CodeBlockNodeModel, DynamoCore",
      "NodeType": "CodeBlockNode",
      "Code": "a-100;",
      "Id": "e3fc2bcbb356469986aede543a82e231",
      "Inputs": [
        {
          "Id": "9f110ab80197405a88f0d21203749fdf",
          "Name": "a",
          "Description": "a",
          "UsingDefaultValue": false,
          "Level": 2,
          "UseLevels": false,
          "KeepListStructure": false
        }
      ],
      "Outputs": [
        {
          "Id": "0747a1d21add46d1aab3fa0bef72c1c6",
          "Name": "",
          "Description": "Value of expression at line 1",
          "UsingDefaultValue": false,
          "Level": 2,
          "UseLevels": false,
          "KeepListStructure": false
        }
      ],
      "Replication": "Disabled",
      "Description": "Allows for DesignScript code to be authored directly"
    },
    {
      "ConcreteType": "Dynamo.Graph.Nodes.ZeroTouch.DSFunction, DynamoCore",
      "NodeType": "FunctionNode",
      "FunctionSignature": "DSCore.List.FirstItem@var[]..[]",
      "Id": "a76d21567e6a449da254f234bf10a90f",
      "Inputs": [
        {
          "Id": "8c362c8f4838434a981af9d12f6b6b9f",
          "Name": "list",
          "Description": "List to get the first item from.\n\nvar[]..[]",
          "UsingDefaultValue": false,
          "Level": 2,
          "UseLevels": true,
          "KeepListStructure": true
        }
      ],
      "Outputs": [
        {
          "Id": "8dbb4ad2aa2d4e3ab953784f7c38ab7f",
          "Name": "item",
          "Description": "First item in the list.",
          "UsingDefaultValue": false,
          "Level": 2,
          "UseLevels": false,
          "KeepListStructure": false
        }
      ],
      "Replication": "Auto",
      "Description": "Returns the first item in a list.\n\nList.FirstItem (list: var[]..[]): var[]..[]"
    },
    {
      "ConcreteType": "CoreNodeModels.HigherOrder.Map, CoreNodeModels",
      "NodeType": "ExtensionNode",
      "Id": "ca42e9001085497d903d970722a51b96",
      "Inputs": [
        {
          "Id": "28b1483079c64afe87eb82dd83670576",
          "Name": "list",
          "Description": "The list to map over.",
          "UsingDefaultValue": false,
          "Level": 2,
          "UseLevels": false,
          "KeepListStructure": false
        },
        {
          "Id": "96e38925a2b34cea9c2be16a2f65c381",
          "Name": "f(x)",
          "Description": "The procedure used to map element",
          "UsingDefaultValue": false,
          "Level": 2,
          "UseLevels": false,
          "KeepListStructure": false
        }
      ],
      "Outputs": [
        {
          "Id": "5e652ee0ae2d423e9e164fc8bab0200a",
          "Name": "mapped",
          "Description": "Mapped list",
          "UsingDefaultValue": false,
          "Level": 2,
          "UseLevels": false,
          "KeepListStructure": false
        }
      ],
      "Replication": "Disabled",
      "Description": "Applies a function over all elements of a list, generating a new list from the results."
    },
    {
      "ConcreteType": "Dynamo.Graph.Nodes.ZeroTouch.DSFunction, DynamoCore",
      "NodeType": "FunctionNode",
      "FunctionSignature": "Autodesk.DesignScript.Geometry.PolyCurve.ByJoinedCurves@Autodesk.DesignScript.Geometry.Curve[],double",
      "Id": "e8f7676a5ea14784941d53fa973a23db",
      "Inputs": [
        {
          "Id": "0902b1465903466899fe65d5ef7fbfed",
          "Name": "curves",
          "Description": "Curves to join into polycurve\n\nCurve[]",
          "UsingDefaultValue": false,
          "Level": 2,
          "UseLevels": false,
          "KeepListStructure": false
        },
        {
          "Id": "b03cf094c22c46359dfc4e5e3acdc0e5",
          "Name": "joinTolerance",
          "Description": "Tolerance to determine size of gap allowed between curves to be joined\n\ndouble\nDefault value : 0.001",
          "UsingDefaultValue": true,
          "Level": 2,
          "UseLevels": false,
          "KeepListStructure": false
        }
      ],
      "Outputs": [
        {
          "Id": "ebca644622204a95b5b327b778b60bd4",
          "Name": "PolyCurve",
          "Description": "PolyCurve",
          "UsingDefaultValue": false,
          "Level": 2,
          "UseLevels": false,
          "KeepListStructure": false
        }
      ],
      "Replication": "Auto",
      "Description": "Make PolyCurve by joining curves. Flips curve as needed for connectivity. Choose a preferred join tolerance between 1e-6 and 1e-3 units.\n\nPolyCurve.ByJoinedCurves (curves: Curve[], joinTolerance: double = 0.001): PolyCurve"
    },
    {
      "ConcreteType": "Dynamo.Graph.Nodes.ZeroTouch.DSFunction, DynamoCore",
      "NodeType": "FunctionNode",
      "FunctionSignature": "Autodesk.DesignScript.Geometry.PolyCurve.ByJoinedCurves@Autodesk.DesignScript.Geometry.Curve[],double",
      "Id": "9d1a479f17ca419ca9dbc48e0199b37f",
      "Inputs": [
        {
          "Id": "f1a333288a564340bfdd0c1ccc18e23d",
          "Name": "curves",
          "Description": "Curves to join into polycurve\n\nCurve[]",
          "UsingDefaultValue": false,
          "Level": 2,
          "UseLevels": false,
          "KeepListStructure": false
        },
        {
          "Id": "1d88bbf4d0594da68879f5bed0ac2ca8",
          "Name": "joinTolerance",
          "Description": "Tolerance to determine size of gap allowed between curves to be joined\n\ndouble\nDefault value : 0.001",
          "UsingDefaultValue": true,
          "Level": 2,
          "UseLevels": false,
          "KeepListStructure": false
        }
      ],
      "Outputs": [
        {
          "Id": "4c1cfd7064fb4ee18c72d7c76514f0f6",
          "Name": "PolyCurve",
          "Description": "PolyCurve",
          "UsingDefaultValue": false,
          "Level": 2,
          "UseLevels": false,
          "KeepListStructure": false
        }
      ],
      "Replication": "Auto",
      "Description": "Make PolyCurve by joining curves. Flips curve as needed for connectivity. Choose a preferred join tolerance between 1e-6 and 1e-3 units.\n\nPolyCurve.ByJoinedCurves (curves: Curve[], joinTolerance: double = 0.001): PolyCurve"
    },
    {
      "ConcreteType": "CoreNodeModels.CreateList, CoreNodeModels",
      "VariableInputPorts": true,
      "NodeType": "ExtensionNode",
      "Id": "dad642035b7f4353badfd16941df696a",
      "Inputs": [
        {
          "Id": "6a2e83d1d2594611b5aefd5ff6e1e37b",
          "Name": "item0",
          "Description": "Item Index #0",
          "UsingDefaultValue": false,
          "Level": 2,
          "UseLevels": false,
          "KeepListStructure": false
        },
        {
          "Id": "d4ef6c8e726a41f0b2fb1114fdf3ed17",
          "Name": "item1",
          "Description": "Item Index #1",
          "UsingDefaultValue": false,
          "Level": 2,
          "UseLevels": false,
          "KeepListStructure": false
        }
      ],
      "Outputs": [
        {
          "Id": "37f1abfe2c4545e2b78180ab63a6acb3",
          "Name": "list",
          "Description": "A list",
          "UsingDefaultValue": false,
          "Level": 2,
          "UseLevels": false,
          "KeepListStructure": false
        }
      ],
      "Replication": "Disabled",
      "Description": "Makes a new list out of the given inputs"
    },
    {
      "ConcreteType": "Dynamo.Graph.Nodes.ZeroTouch.DSFunction, DynamoCore",
      "NodeType": "FunctionNode",
      "FunctionSignature": "DSCore.List.Transpose@var[]..[]",
      "Id": "23aeab52c301450186c7c55698a43f8b",
      "Inputs": [
        {
          "Id": "90d5c96a60934f258c133420fd6d302b",
          "Name": "lists",
          "Description": "A list of lists to be transposed.\n\nvar[]..[]",
          "UsingDefaultValue": false,
          "Level": 2,
          "UseLevels": false,
          "KeepListStructure": false
        }
      ],
      "Outputs": [
        {
          "Id": "c3011bccc780492d9e24e5ce7dcdb496",
          "Name": "lists",
          "Description": "A list of transposed lists.",
          "UsingDefaultValue": false,
          "Level": 2,
          "UseLevels": false,
          "KeepListStructure": false
        }
      ],
      "Replication": "Auto",
      "Description": "Swaps rows and columns in a list of lists. If there are some rows that are shorter than others, null values are inserted as place holders in the resultant array such that it is always rectangular.\n\nList.Transpose (lists: var[]..[]): var[]..[]"
    },
    {
      "ConcreteType": "Dynamo.Graph.Nodes.ZeroTouch.DSFunction, DynamoCore",
      "NodeType": "FunctionNode",
      "FunctionSignature": "Autodesk.DesignScript.Geometry.Solid.ByLoft@Autodesk.DesignScript.Geometry.Curve[]",
      "Id": "302b003e892541f688617355b91dad56",
      "Inputs": [
        {
          "Id": "9bf27c46f6f544e68271a251218a58de",
          "Name": "crossSections",
          "Description": "Curve[]",
          "UsingDefaultValue": false,
          "Level": 2,
          "UseLevels": false,
          "KeepListStructure": false
        }
      ],
      "Outputs": [
        {
          "Id": "57b9ed58982941ffb2a0af8ae8d5b108",
          "Name": "Solid",
          "Description": "Solid",
          "UsingDefaultValue": false,
          "Level": 2,
          "UseLevels": false,
          "KeepListStructure": false
        }
      ],
      "Replication": "Auto",
      "Description": "Create a Solid by lofting between input cross section closed Curves.\n\nSolid.ByLoft (crossSections: Curve[]): Solid"
    },
    {
      "ConcreteType": "Dynamo.Graph.Nodes.ZeroTouch.DSFunction, DynamoCore",
      "NodeType": "FunctionNode",
      "FunctionSignature": "Autodesk.DesignScript.Geometry.Solid.ByUnion@Autodesk.DesignScript.Geometry.Solid[]",
      "Id": "a981790649254e768f2db0d26ddee0ae",
      "Inputs": [
        {
          "Id": "103f1cf10d394dddafdaa0b62087c1e0",
          "Name": "solids",
          "Description": "A collection of solids\n\nSolid[]",
          "UsingDefaultValue": false,
          "Level": 2,
          "UseLevels": false,
          "KeepListStructure": false
        }
      ],
      "Outputs": [
        {
          "Id": "ded0bf5aca6d4681b2a478ab72e3cd32",
          "Name": "Solid",
          "Description": "Solid",
          "UsingDefaultValue": false,
          "Level": 2,
          "UseLevels": false,
          "KeepListStructure": false
        }
      ],
      "Replication": "Auto",
      "Description": "Union a collection of solids into one solid\n\nSolid.ByUnion (solids: Solid[]): Solid"
    },
    {
      "ConcreteType": "CoreNodeModels.Logic.If, CoreNodeModels",
      "NodeType": "ExtensionNode",
      "Id": "1d7b82ea33a84d4a87d18bdf8d5a7eb2",
      "Inputs": [
        {
          "Id": "7701be51136e424db18e78f07ae93d48",
          "Name": "test",
          "Description": "Test block",
          "UsingDefaultValue": false,
          "Level": 2,
          "UseLevels": false,
          "KeepListStructure": false
        },
        {
          "Id": "4b829e7e4096412b818bb1e6904fa724",
          "Name": "true",
          "Description": "True block",
          "UsingDefaultValue": false,
          "Level": 2,
          "UseLevels": false,
          "KeepListStructure": false
        },
        {
          "Id": "fad02480e2ca4ed39850cff07560afdb",
          "Name": "false",
          "Description": "False block",
          "UsingDefaultValue": false,
          "Level": 2,
          "UseLevels": false,
          "KeepListStructure": false
        }
      ],
      "Outputs": [
        {
          "Id": "1f7c5b5bf56e4305bfdfcf6076c8c94c",
          "Name": "result",
          "Description": "result",
          "UsingDefaultValue": false,
          "Level": 2,
          "UseLevels": false,
          "KeepListStructure": false
        }
      ],
      "Replication": "Disabled",
      "Description": "Conditional statement"
    },
    {
      "ConcreteType": "CoreNodeModels.Input.BoolSelector, CoreNodeModels",
      "NodeType": "BooleanInputNode",
      "InputValue": false,
      "Id": "0de23e2b47dc473aa04660767a7ad38f",
      "Inputs": [],
      "Outputs": [
        {
          "Id": "d0e0bcfa7c8844b88ba3440bf4eb8d1b",
          "Name": "",
          "Description": "Boolean",
          "UsingDefaultValue": false,
          "Level": 2,
          "UseLevels": false,
          "KeepListStructure": false
        }
      ],
      "Replication": "Disabled",
      "Description": "Selection between a true and false."
    },
    {
      "ConcreteType": "CoreNodeModels.Logic.If, CoreNodeModels",
      "NodeType": "ExtensionNode",
      "Id": "906e808ee4ed4580839fc54853748d15",
      "Inputs": [
        {
          "Id": "4b08acbc5103431db92f1fedd0150fba",
          "Name": "test",
          "Description": "Test block",
          "UsingDefaultValue": false,
          "Level": 2,
          "UseLevels": false,
          "KeepListStructure": false
        },
        {
          "Id": "1b4eabb8fd444ebc9f8d4f0d5e35ed92",
          "Name": "true",
          "Description": "True block",
          "UsingDefaultValue": false,
          "Level": 2,
          "UseLevels": false,
          "KeepListStructure": false
        },
        {
          "Id": "3471cd2c362e43079ddc2100e6a03d42",
          "Name": "false",
          "Description": "False block",
          "UsingDefaultValue": false,
          "Level": 2,
          "UseLevels": false,
          "KeepListStructure": false
        }
      ],
      "Outputs": [
        {
          "Id": "b9294f9d934b49219ea4609973d87a68",
          "Name": "result",
          "Description": "result",
          "UsingDefaultValue": false,
          "Level": 2,
          "UseLevels": false,
          "KeepListStructure": false
        }
      ],
      "Replication": "Disabled",
      "Description": "Conditional statement"
    },
    {
      "ConcreteType": "Dynamo.Graph.Nodes.ZeroTouch.DSFunction, DynamoCore",
      "NodeType": "FunctionNode",
      "FunctionSignature": "Autodesk.DesignScript.Geometry.Geometry.IntersectAll@Autodesk.DesignScript.Geometry.Geometry[]",
      "Id": "7001b72a2d8640bc81cf71b931a111c4",
      "Inputs": [
        {
          "Id": "9909d362a82346da8af0d6e749eb43f2",
          "Name": "geometry",
          "Description": "Autodesk.DesignScript.Geometry.Geometry",
          "UsingDefaultValue": false,
          "Level": 2,
          "UseLevels": false,
          "KeepListStructure": false
        },
        {
          "Id": "33fde945c4a74fde9750749108fe2b26",
          "Name": "others",
          "Description": "Geometry[]",
          "UsingDefaultValue": false,
          "Level": 2,
          "UseLevels": false,
          "KeepListStructure": false
        }
      ],
      "Outputs": [
        {
          "Id": "55274e20311843eab996bc876b661d84",
          "Name": "Geometry[]",
          "Description": "Geometry[]",
          "UsingDefaultValue": false,
          "Level": 2,
          "UseLevels": false,
          "KeepListStructure": false
        }
      ],
      "Replication": "Auto",
      "Description": "Get the intersection of Geometry for this object and a collection of other Geometries. Finds common geometry of all participants.\n\nGeometry.IntersectAll (others: Geometry[]): Geometry[]"
    },
    {
      "ConcreteType": "Dynamo.Graph.Nodes.ZeroTouch.DSFunction, DynamoCore",
      "NodeType": "FunctionNode",
      "FunctionSignature": "Autodesk.DesignScript.Geometry.Solid.Volume",
      "Id": "ff4ba73700f24ea28ff2c6bbf6d299b5",
      "Inputs": [
        {
          "Id": "c924d86346634b8e8fe65c125326e9c8",
          "Name": "solid",
          "Description": "Autodesk.DesignScript.Geometry.Solid",
          "UsingDefaultValue": false,
          "Level": 2,
          "UseLevels": false,
          "KeepListStructure": false
        }
      ],
      "Outputs": [
        {
          "Id": "62c4c743a347457096c7d2d9aff6d8f6",
          "Name": "double",
          "Description": "double",
          "UsingDefaultValue": false,
          "Level": 2,
          "UseLevels": false,
          "KeepListStructure": false
        }
      ],
      "Replication": "Auto",
      "Description": "The total volume of the Solid\n\nSolid.Volume: double"
    },
    {
      "ConcreteType": "CoreNodeModels.DynamoConvert, CoreNodeModels",
      "NodeType": "ConvertBetweenUnitsNode",
      "MeasurementType": "Volume",
      "FromConversion": "CubicCentimeter",
      "ToConversion": "CubicMeters",
      "Id": "df71f0090d484ebfbd71cc7c627487f4",
      "Inputs": [
        {
          "Id": "eb722ca7ea314370a0c046834de2ec36",
          "Name": "",
          "Description": "A numeric value for conversion.",
          "UsingDefaultValue": true,
          "Level": 2,
          "UseLevels": false,
          "KeepListStructure": false
        }
      ],
      "Outputs": [
        {
          "Id": "6dead1919a244d4bbb48cbdefbbbedfd",
          "Name": "",
          "Description": "A converted numeric value.",
          "UsingDefaultValue": false,
          "Level": 2,
          "UseLevels": false,
          "KeepListStructure": false
        }
      ],
      "Replication": "Disabled",
      "Description": "Convert between units of measure."
    },
    {
      "ConcreteType": "Dynamo.Graph.Nodes.ZeroTouch.DSFunction, DynamoCore",
      "NodeType": "FunctionNode",
      "FunctionSignature": "DSCore.Math.Tan@double",
      "Id": "03684462791749f5bdb97ed06790476f",
      "Inputs": [
        {
          "Id": "6b5bb523def7491ba78d1065aea13c8a",
          "Name": "angle",
          "Description": "Angle in degrees to take the tangent of.\n\ndouble",
          "UsingDefaultValue": false,
          "Level": 2,
          "UseLevels": false,
          "KeepListStructure": false
        }
      ],
      "Outputs": [
        {
          "Id": "16192daee04d41b0a88583fd25a58529",
          "Name": "tan",
          "Description": "Tangent of the angle.",
          "UsingDefaultValue": false,
          "Level": 2,
          "UseLevels": false,
          "KeepListStructure": false
        }
      ],
      "Replication": "Auto",
      "Description": "Finds the tangent of an angle.\n\nMath.Tan (angle: double): double"
    },
    {
      "ConcreteType": "CoreNodeModels.Input.DoubleSlider, CoreNodeModels",
      "NodeType": "NumberInputNode",
      "NumberType": "Double",
      "MaximumValue": 90.0,
      "MinimumValue": 0.0,
      "StepValue": 5.0,
      "InputValue": 45.0,
      "Id": "668dc78b7932417bb4872b7a7d1fff68",
      "Inputs": [],
      "Outputs": [
        {
          "Id": "478454acda704ff9afea5d6f772aa4d9",
          "Name": "",
          "Description": "Double",
          "UsingDefaultValue": false,
          "Level": 2,
          "UseLevels": false,
          "KeepListStructure": false
        }
      ],
      "Replication": "Disabled",
      "Description": "A slider that produces numeric values."
    },
    {
      "ConcreteType": "Dynamo.Graph.Nodes.ZeroTouch.DSFunction, DynamoCore",
      "NodeType": "FunctionNode",
      "FunctionSignature": "*@var[]..[],var[]..[]",
      "Id": "6094fd4440fc4f1ca60251d0b51bb33f",
      "Inputs": [
        {
          "Id": "dd00f5589c714267af2830212038b5c3",
          "Name": "x",
          "Description": "x value.\n\nvar[]..[]",
          "UsingDefaultValue": false,
          "Level": 2,
          "UseLevels": false,
          "KeepListStructure": false
        },
        {
          "Id": "83b85660541a4ba8a95671e0575b3a2d",
          "Name": "y",
          "Description": "y value.\n\nvar[]..[]",
          "UsingDefaultValue": false,
          "Level": 2,
          "UseLevels": false,
          "KeepListStructure": false
        }
      ],
      "Outputs": [
        {
          "Id": "9ddba40ffb9e4aa3830a707918318a87",
          "Name": "var[]..[]",
          "Description": "var[]..[]",
          "UsingDefaultValue": false,
          "Level": 2,
          "UseLevels": false,
          "KeepListStructure": false
        }
      ],
      "Replication": "Auto",
      "Description": "Multiplies x by y.\n\n* (x: var[]..[], y: var[]..[]): var[]..[]"
    },
    {
      "ConcreteType": "CoreNodeModels.Input.BoolSelector, CoreNodeModels",
      "NodeType": "BooleanInputNode",
      "InputValue": true,
      "Id": "3777f66e2b294917a661bba39b80d1c2",
      "Inputs": [],
      "Outputs": [
        {
          "Id": "4db322fc590f42c58cb6b911cac26a53",
          "Name": "",
          "Description": "Boolean",
          "UsingDefaultValue": false,
          "Level": 2,
          "UseLevels": false,
          "KeepListStructure": false
        }
      ],
      "Replication": "Disabled",
      "Description": "Selection between a true and false."
    },
    {
      "ConcreteType": "CoreNodeModels.Logic.If, CoreNodeModels",
      "NodeType": "ExtensionNode",
      "Id": "dc17e6c480eb49b5a9ddcb13e94dd0a8",
      "Inputs": [
        {
          "Id": "e2a8863978e84c299c95c29d48621eb3",
          "Name": "test",
          "Description": "Test block",
          "UsingDefaultValue": false,
          "Level": 2,
          "UseLevels": false,
          "KeepListStructure": false
        },
        {
          "Id": "226c52052e3647709797472f5ead3076",
          "Name": "true",
          "Description": "True block",
          "UsingDefaultValue": false,
          "Level": 2,
          "UseLevels": false,
          "KeepListStructure": false
        },
        {
          "Id": "627c1a13261049adbf26ccf8d11a367d",
          "Name": "false",
          "Description": "False block",
          "UsingDefaultValue": false,
          "Level": 2,
          "UseLevels": false,
          "KeepListStructure": false
        }
      ],
      "Outputs": [
        {
          "Id": "827a350afd26428d9508f7098fec3a6e",
          "Name": "result",
          "Description": "result",
          "UsingDefaultValue": false,
          "Level": 2,
          "UseLevels": false,
          "KeepListStructure": false
        }
      ],
      "Replication": "Disabled",
      "Description": "Conditional statement"
    },
    {
      "ConcreteType": "Dynamo.Graph.Nodes.ZeroTouch.DSFunction, DynamoCore",
      "NodeType": "FunctionNode",
      "FunctionSignature": "Revit.Elements.Level.Elevation",
      "Id": "e481edf2803b4b1382ff96446182c98f",
      "Inputs": [
        {
          "Id": "c8154bf76a234852931c35f41b4e8b2f",
          "Name": "level",
          "Description": "Revit.Elements.Level",
          "UsingDefaultValue": false,
          "Level": 2,
          "UseLevels": false,
          "KeepListStructure": false
        }
      ],
      "Outputs": [
        {
          "Id": "4b3d5274b929452f96c11e858c23368b",
          "Name": "double",
          "Description": "double",
          "UsingDefaultValue": false,
          "Level": 2,
          "UseLevels": false,
          "KeepListStructure": false
        }
      ],
      "Replication": "Auto",
      "Description": "The elevation of the level above ground level\n\nLevel.Elevation: double"
    },
    {
      "ConcreteType": "CoreNodeModels.Input.DoubleInput, CoreNodeModels",
      "NodeType": "NumberInputNode",
      "NumberType": "Double",
      "InputValue": -26.0,
      "Id": "375561998ecd496ca91dc33c39504454",
      "Inputs": [],
      "Outputs": [
        {
          "Id": "de19208b0ea942298bf88c99b84b898d",
          "Name": "",
          "Description": "Double",
          "UsingDefaultValue": false,
          "Level": 2,
          "UseLevels": false,
          "KeepListStructure": false
        }
      ],
      "Replication": "Disabled",
      "Description": "Creates a number."
    },
    {
      "ConcreteType": "Dynamo.Graph.Nodes.ZeroTouch.DSFunction, DynamoCore",
      "NodeType": "FunctionNode",
      "FunctionSignature": "+@var[]..[],var[]..[]",
      "Id": "7810b937827e45779fa71445f8aae8a5",
      "Inputs": [
        {
          "Id": "ff5007371363453199e9d4e8d3af1c40",
          "Name": "x",
          "Description": "x value.\n\nvar[]..[]",
          "UsingDefaultValue": false,
          "Level": 2,
          "UseLevels": false,
          "KeepListStructure": false
        },
        {
          "Id": "63a60205ea114cbb959af2cff5583a70",
          "Name": "y",
          "Description": "y value.\n\nvar[]..[]",
          "UsingDefaultValue": false,
          "Level": 2,
          "UseLevels": false,
          "KeepListStructure": false
        }
      ],
      "Outputs": [
        {
          "Id": "5ff0a7b65edc4138bec090fa0b9785e6",
          "Name": "var[]..[]",
          "Description": "var[]..[]",
          "UsingDefaultValue": false,
          "Level": 2,
          "UseLevels": false,
          "KeepListStructure": false
        }
      ],
      "Replication": "Auto",
      "Description": "Adds x to y.\n\n+ (x: var[]..[], y: var[]..[]): var[]..[]"
    }
  ],
  "Connectors": [
    {
      "Start": "cc9a7baa0b8046a6931174cc243b1ff5",
      "End": "8284d577896e44cfbeda948c55478716",
      "Id": "8958db7304cf49e1b3efae0fb77fbfee"
    },
    {
      "Start": "2d5b9e85a5154dde900664baabaaa6cf",
      "End": "7770760455474fc6a311a65b893ba06f",
      "Id": "f1263fdfb12f4c708fc91a144ccfc3cf"
    },
    {
      "Start": "d105f8754f80460b8b9005f01b134cde",
      "End": "a904c06458774fa2898e5028fa238285",
      "Id": "50d9a0c3f4a04d09969d110ed7468020"
    },
    {
      "Start": "d105f8754f80460b8b9005f01b134cde",
      "End": "74ca726d0c2b46beb9a80cfcc60c9582",
      "Id": "238ea1cedb2b4e51b6726ad0fb5ef98e"
    },
    {
      "Start": "b26323da49494a3b88d4dbd9e7996251",
      "End": "167fb4188ac24e908cdc9851978f4079",
      "Id": "7e2627a4fd7b4ed3ab3369a8a5940f4c"
    },
    {
      "Start": "59ac3ef863af45e3a19fa953dfea32ab",
      "End": "7882922b200a48dc9ec20c7cf755a7c4",
      "Id": "c7537642a8e54dcca3ffb7ccca56cadc"
    },
    {
      "Start": "a72190dab73d42f5bbd4223ddcdbd89e",
      "End": "bd1a755f24cd4e4f8eb8d6e36c0763f5",
      "Id": "5f6f4b1c174e40a890f4206466ea3bd6"
    },
    {
      "Start": "a72190dab73d42f5bbd4223ddcdbd89e",
      "End": "70b78e7847344c20a348b3342fa18d82",
      "Id": "447f4dc245e140bd85c37ca2d0c4c5c0"
    },
    {
      "Start": "37fedb1cbd47451e8f4b364677bb92ff",
      "End": "9556d9025a424fdc8fb3f7d48d004956",
      "Id": "456a97bf9e414b3f9a7338f834475600"
    },
    {
      "Start": "6f537dab5dae4fca9df927fe760372c3",
      "End": "50d6f0a48c4246339721954af2acd6de",
      "Id": "e8592c5e38224bd1979e4b80b1d9fcbd"
    },
    {
      "Start": "8c53393f1012418a8f8a9b1ff6fbcfea",
      "End": "e693ed7bfb32430888e8cda90fea9f4e",
      "Id": "89cbf99f0fbe48faa23bb154996fc49c"
    },
    {
      "Start": "2b34d60023454c449f03809df3ea420e",
      "End": "c33259dd51d34c71894dda5f3a987caa",
      "Id": "f88389795012461db05de47a0e931c2b"
    },
    {
      "Start": "541cfe5e384f42aeb70cfd377ea05dbc",
      "End": "2ac513328d574e38a24e9b6fff13b3de",
      "Id": "50586e352abf42b3a7a7edf0485c547e"
    },
    {
      "Start": "d33cb5eba9e544ab9a01126bff42ae19",
      "End": "93198fab30054c438f9e0b3293992d8f",
      "Id": "4aeea1f9023d4d31b101d89ac81edcac"
    },
    {
      "Start": "d33cb5eba9e544ab9a01126bff42ae19",
      "End": "36d1b920e00748cab9cd2ffaf3453607",
      "Id": "8a4057dc5b964fe78af995d008fb59cc"
    },
    {
      "Start": "c3541ba9fbf242ee982693d9ad723057",
      "End": "de549e0592884e618253eb477c59f8f6",
      "Id": "6caf02dcb9cd49dba908f7484befe057"
    },
    {
      "Start": "d29b3473509940cdbefa9d837405236b",
      "End": "6033ccb5e49441a58b4a78cf359510fe",
      "Id": "f15da1a20f914928879d92517165969c"
    },
    {
      "Start": "2c591e9b9a6b4fbb86758b29d03cee39",
      "End": "81752dd289c840dc913895e3198ae581",
      "Id": "a4df0871150547d29a6484663957b496"
    },
    {
      "Start": "2c591e9b9a6b4fbb86758b29d03cee39",
      "End": "c31d35e1dbc44cdc917be4ba461a7711",
      "Id": "80d1b142944f4b259ca79933f82b2bb1"
    },
    {
      "Start": "6002b9521b3c4a08ae4c3c7139a3febd",
      "End": "37e4eb79fec64e50b4ae053e04f3d347",
      "Id": "6aeb7c6d1a6c4251b86c13d0ea66f77e"
    },
    {
      "Start": "7e714e30083c4a09873777ce88b8899d",
      "End": "5a776683f8394448ade13736f9bb063b",
      "Id": "0996ebe6eaa04c8db029a6884d06ca57"
    },
    {
      "Start": "1aa0c7f9c189464db08a4912c6ac8382",
      "End": "9dac7833822041e98beba595195a9aa7",
      "Id": "ce3cf04377024943a30dcc200041a45a"
    },
    {
      "Start": "a1e63ea26b52443eb9c2039e501dfda0",
      "End": "243ce51fa7064820a4fe8962bd82eb0f",
      "Id": "8afe72760175415faeedbc08d5459fa2"
    },
    {
      "Start": "aaa31ffe5c284ae3914da49c8423d43b",
      "End": "813ff09ad609421796ab5ad0290e792f",
      "Id": "4abd83cdd03e42f7b785f7a751a0d7ac"
    },
    {
      "Start": "3c7cf2b70a11493b90fe248b3249ddf0",
      "End": "e3bc59f75896425d9d8a4216bf0c3f33",
      "Id": "2f5a8368624746aea1bb7b67b2ef59c1"
    },
    {
      "Start": "3c7cf2b70a11493b90fe248b3249ddf0",
      "End": "c8154bf76a234852931c35f41b4e8b2f",
      "Id": "239964972f2243d78f6f0ae8d4c9856a"
    },
    {
      "Start": "f588896714b740a3852df15bd007a26e",
      "End": "a5bcf825bdb345fd9465839165cea089",
      "Id": "50d550b38ab34fda96934dd3cc6ca8a2"
    },
    {
      "Start": "c3187922c5d549028776f9cf64fd00b6",
      "End": "0828cc92e5e943d8934c4506e566fc30",
      "Id": "1854ddf6f7c94d978ba933dce5b9380c"
    },
    {
      "Start": "659c1f6a70ff4a36adf5bfc605521bed",
      "End": "63958790ee384960b065933bb50fe12d",
      "Id": "74f6d91873254e28ac81eeade553cf12"
    },
    {
      "Start": "779c4cfdbf6d4072b2c6757d16895db2",
      "End": "74f9667a42de43388d1b2c57b4de5b4b",
      "Id": "b47f0feb04c747d1bfe89a21a3339e71"
    },
    {
      "Start": "31d5b750ca074b239730886706dd2a0b",
      "End": "76375c658809480f99bcf30426ccbd78",
      "Id": "6297ad2795e24c42b7af4b29b5cd18fa"
    },
    {
      "Start": "9d1d2e98f76c42b385b00b7300a564da",
      "End": "b6600faeedcb4c97bfba172344c6b60c",
      "Id": "4f898f65a8ad4fd68b83349aac1f31b5"
    },
    {
      "Start": "ee8e3b51047142fc81dcedc1789d6c4c",
      "End": "d4b6af5efc0a40e2a6fbd606f46c122c",
      "Id": "51bfa63b927a40f692dfd0b6919641c9"
    },
    {
      "Start": "656699f6276849939d6e357c9352c8b6",
      "End": "7763ea0179b545208517020db47aead1",
      "Id": "bb404cbf14ff407080dc78d647200cab"
    },
    {
      "Start": "eb609d1986104e6aa87ffc96a82aca36",
      "End": "a008cdfdc169403f8be2cafd1462561d",
      "Id": "5ace705518234fa3a290579bd35279ee"
    },
    {
      "Start": "eb609d1986104e6aa87ffc96a82aca36",
      "End": "00189326ec514b08b6bbfee1c3a5b022",
      "Id": "b12363cda3c3422484b30b8eae6a9a0a"
    },
    {
      "Start": "50633ce3ce9b47578135418ee9badae2",
      "End": "627c1a13261049adbf26ccf8d11a367d",
      "Id": "db976d7c1e0c489289161fb929c53eaf"
    },
    {
      "Start": "cfdb444a119b47dfadbf9ef2612a7280",
      "End": "d884c82e636a44f4823bbeac7f07e44b",
      "Id": "788cf0d4019742d9b91559934f2b9a70"
    },
    {
      "Start": "9b54039b84964712b4bcd45f2473f6f9",
      "End": "9af7aaf866c94f9a9e08ff08d656142a",
      "Id": "4a9982e3370e4f41b4add626f31371ef"
    },
    {
      "Start": "9b54039b84964712b4bcd45f2473f6f9",
      "End": "fad02480e2ca4ed39850cff07560afdb",
      "Id": "5c2ee0b9273240cca2b21561e912348e"
    },
    {
      "Start": "eedb959f2b634bcdb2bd7f9071ee643f",
      "End": "584455500bc14971b954bf5c92e30bcb",
      "Id": "9180f6d5b0cc4a1d8dd13e070bc3f0d6"
    },
    {
      "Start": "ad804cf8bd724415a89847a3fdfe22f5",
      "End": "41bd72e4ab0443b58292d646f9a5d3a8",
      "Id": "1c3fbd8bcfc3414ca57717f3073a48e4"
    },
    {
      "Start": "72e1f133d3934d9c96db70d2fd5705b6",
      "End": "e35d9c46868a464f95dee4b766da2934",
      "Id": "9d009d6c1a364963a7ee01901820707d"
    },
    {
      "Start": "5da2dc0c47ef455a890c676f666ed1af",
      "End": "a7c24c25a874446d967a313aea498a45",
      "Id": "8547f8b01e9d45f9af4d8a3262044dff"
    },
    {
      "Start": "5da2dc0c47ef455a890c676f666ed1af",
      "End": "0678c1e634b74132a2bd57a4bf76876e",
      "Id": "8098fe9a97794534aee2764314bdf372"
    },
    {
      "Start": "51df608d7dfb4238a9d5479e04a38b9f",
      "End": "e0d70a21d8414ebdbc9120af191a0bad",
      "Id": "6a62c62d7386462b895f3ea852115df7"
    },
    {
      "Start": "f093571af0194d52b47561845f92554b",
      "End": "d52df73d2eb34db78be90896d98acf50",
      "Id": "fca6cd3b4c4d4769a0f13941ecedaadf"
    },
    {
      "Start": "2539b7ff85994411b423a02e2bd4108b",
      "End": "aa2e03e9a70e46b59c3f14a2f0c27eae",
      "Id": "9e3178e44daf412cbcb5d8dd495b96be"
    },
    {
      "Start": "2539b7ff85994411b423a02e2bd4108b",
      "End": "803870cda1914558aad0fd8f40f11479",
      "Id": "078adcc94b75455e9ff1f9f963f6cb59"
    },
    {
      "Start": "1eb4c6d1bb16499c9965d45412565134",
      "End": "df9ffa5b449e4c4aa285103a858771c9",
      "Id": "e8645f6f74dd45ef81be082e17deccfa"
    },
    {
      "Start": "1eb4c6d1bb16499c9965d45412565134",
      "End": "7027fcc761df49bab9471b0f436cada7",
      "Id": "bfc9e6f2be4646a2b3f91833e371622a"
    },
    {
      "Start": "c5c9fb02390947f3b42b611f78f1c748",
      "End": "42129e37c3754f5ab9d91b1b3ca407e0",
      "Id": "4702a9375243467295bcdf9a3f9f9e96"
    },
    {
      "Start": "4eec63c513bc4b81a5146a06e0132a29",
      "End": "7b52187c862e463ea42cf1ddf6e26cda",
      "Id": "9aa97f7b8cd341208867f9fa0869f845"
    },
    {
      "Start": "0f43d0fd49e84d7fab5a9e9f01a2fd1c",
      "End": "a3c1c46ba8ef455fb241812317a8f4d3",
      "Id": "89f0d93f550b492fa500f6c66457994f"
    },
    {
      "Start": "640cbeb9ba2e47138faa550144698287",
      "End": "b4a8e42834a249aa9fa3b6ade35b8305",
      "Id": "a2812cdd6112495a9bc2239e3d776be6"
    },
    {
      "Start": "c7d991594d634101b0fb4be3fb8ee883",
      "End": "b99fbe7c20fe461e995d29fdcb610637",
      "Id": "1e096d3eb2394d3194fcd53744516758"
    },
    {
      "Start": "4ff0ff8ea2a743ecad211feacfb54d71",
      "End": "05430c5bb1e54d73bf06a6cdbcdf1a17",
      "Id": "db1eefeb641447fa83a965d49f51885d"
    },
    {
      "Start": "d1519447eede4019aa6562544a941a03",
      "End": "8c956746c7e84823984c34a59a941c43",
      "Id": "1638f54f26b947bfa9f0ee52eee63e98"
    },
    {
      "Start": "e898f65f473249a4ae0ea4a7ff6125d5",
      "End": "1b0de355af6240d798dc6b6f711a5ff7",
      "Id": "7330bfdabadc44ff99ea810a1db94cff"
    },
    {
      "Start": "ff0967f3607a4ffc9cac6b074f8d97f2",
      "End": "32d97daa6b754b5f89e344def9bf242a",
      "Id": "01cb14e2fb724a69bfcb9076a0f9eeef"
    },
    {
      "Start": "ff0967f3607a4ffc9cac6b074f8d97f2",
      "End": "9a683d2f4a3641bca3ef6b44fa936658",
      "Id": "ba2c938639f64f6a849dc61237cf65d3"
    },
    {
      "Start": "a2789fb40d7249b4a938bea581d26c88",
      "End": "2d7d103e27b24032916aee8511c1ebc3",
      "Id": "66a06e0d476f4cb3ae942522309496ab"
    },
    {
      "Start": "a2789fb40d7249b4a938bea581d26c88",
      "End": "66865e77f60841eea94f8bfe939816fc",
      "Id": "3e48647fd9194238be68c9e16348405a"
    },
    {
      "Start": "abf1a2d5498b463b8c565dae1f3b5dff",
      "End": "940254862838414690322788f7e879d4",
      "Id": "151a99b4a7614b209ce3b2e5aef4648b"
    },
    {
      "Start": "4c0fe91eaa604d3e8ed599d5d15b325a",
      "End": "663d77c026bd4b3b8e582dc70c42c046",
      "Id": "035a73a754aa499aa7118f349c46ced3"
    },
    {
      "Start": "4941dcd2706d4292b5db9715fbe3d763",
      "End": "3df72310d8a7403881834dab097c02b1",
      "Id": "efa490e3ae28461083b76a71a7568eaf"
    },
    {
      "Start": "f42f606aeb634a8aa16d1d04fd63cafa",
      "End": "281cf4e2fce545c9b6bd110715a37bd8",
      "Id": "6d4d9690c2ec4ab0b6207952dd3db7ff"
    },
    {
      "Start": "dc5b87c676eb4891b350b30e2fa526aa",
      "End": "0f3aaa0b567147f680b61f506dd629c9",
      "Id": "a4a0aac227a0405aaa35ce0c059ba877"
    },
    {
      "Start": "2e186f904ee04780bb85025f64e858b8",
      "End": "bfe6764d7aee47f6b9bdac9516f99944",
      "Id": "4e8d383a8bc34909b3eaf5062d1612ca"
    },
    {
      "Start": "c65056b5d2c04b8e90cbdf643bdea72b",
      "End": "b7504251a1f040c2910a5970ea057345",
      "Id": "10423d8128c74cd981a1aa894367dcef"
    },
    {
      "Start": "2a7f916ca901442a864bbe5d6bf1db48",
      "End": "17cf3bd742ce4a5e9b0c6077151575be",
      "Id": "1d237a4bb6a04e78af2182a38763c38c"
    },
    {
      "Start": "2a7f916ca901442a864bbe5d6bf1db48",
      "End": "1b4eabb8fd444ebc9f8d4f0d5e35ed92",
      "Id": "b255b0e1d6b14aba93e74025a5165267"
    },
    {
      "Start": "9cb7bb50c1eb48aeb87fcb67831185db",
      "End": "5061bc24f9974723933d460fc5b5321d",
      "Id": "31c9e125eb5a46bd8e97431d81d6ec5e"
    },
    {
      "Start": "fcf28c2110dd4d37a74189bf1c285dd9",
      "End": "9bc0752db35d4514a892d7a24d11c368",
      "Id": "2e8a9e451de546e08dc14c0742bdce9a"
    },
    {
      "Start": "fcf28c2110dd4d37a74189bf1c285dd9",
      "End": "7c3e3f11f05641a399bdb2e4c3c2a589",
      "Id": "f7590a128053498fb51d13512b96e87b"
    },
    {
      "Start": "0dde38d59f634f1f9881b6eec08b1dcb",
      "End": "8bce279649e04f40807c3f661ee29a12",
      "Id": "083db7b3c71641a6973a0f5778f15ac2"
    },
    {
      "Start": "dedb1a6c50f447aba762ca78370919b9",
      "End": "e2f850747c284cdb98f91652be0c0e27",
      "Id": "d85519a5fc234b1bafe75eb682481468"
    },
    {
      "Start": "ad035c50ed5c42c39cc47d1544075f7a",
      "End": "135e2f476b1e4aa88bd9427681128f29",
      "Id": "0c14fb7ad287452c9506ff0acb854b40"
    },
    {
      "Start": "ad035c50ed5c42c39cc47d1544075f7a",
      "End": "53a0b3700cd24c739da9cac4a82ef1dd",
      "Id": "ca8f793e23fa46e1984631e79b47462c"
    },
    {
      "Start": "6b3cc08346fb4b8b92b4fe5a6955c6c9",
      "End": "43c8d6fc21214327a05dc4f036eddf67",
      "Id": "d707a605756047f380e2339993ca892a"
    },
    {
      "Start": "58fd1b1549a84d31b2407785491c57dc",
      "End": "f86d38656c004312b74c2e87efdc6395",
      "Id": "883e87f296134f798c924c029cbff31c"
    },
    {
      "Start": "58fd1b1549a84d31b2407785491c57dc",
      "End": "bc23c79d16e3432abc71822aee512e8e",
      "Id": "7b2ffc7f254843538c566e86f1356a4d"
    },
    {
      "Start": "26f60f7602c74cfe885b2f6d1614523b",
      "End": "218bf73828d54c0ab673ee031d52124d",
      "Id": "b70dd582830d47a59fe8202cb06e108a"
    },
    {
      "Start": "3688575e84524db6ab8239e3bed492b8",
      "End": "d16c9134a3af432598327169869f2599",
      "Id": "6ca5f92ecec2446796d3c312e8e6e4ba"
    },
    {
      "Start": "3688575e84524db6ab8239e3bed492b8",
      "End": "d5a36457ed1b4d63b828e294112efa48",
      "Id": "c016abed1e0e4ba98a3ce0dcf4c4db57"
    },
    {
      "Start": "dc47f523a94542feac26b8158ba88310",
      "End": "0a64fc49a3134882824a207b2949c8e4",
      "Id": "6342da8281674d3ca8fdc0e0589d2c8a"
    },
    {
      "Start": "f92c11470b2a422ea6fd55387931ecbf",
      "End": "2417c304a385435f97646ac076dcaa49",
      "Id": "54e3dd553e12446f8c06b35754145db1"
    },
    {
      "Start": "f92c11470b2a422ea6fd55387931ecbf",
      "End": "83b85660541a4ba8a95671e0575b3a2d",
      "Id": "54dbae85414c4845865c0d611b65eb36"
    },
    {
      "Start": "eece51b2c27e46d390f5ac3c9097a155",
      "End": "6e3d2db7cafb4fbabc3e0418669fc734",
      "Id": "9f640c14365143d38ca76587ece895fa"
    },
    {
      "Start": "4d97a491c6f54509bee7dfde67c2c5bc",
      "End": "07363b825c034c78971fb21396751cd6",
      "Id": "8109d38141fb4a268d9a942fb9c7380d"
    },
    {
      "Start": "4d97a491c6f54509bee7dfde67c2c5bc",
      "End": "ff1f57985cf04bd297af241c9b57756d",
      "Id": "ee4a23c6c0834119a398bc56794b14a8"
    },
    {
      "Start": "f55f64f13e504fd1912a4b679871fcab",
      "End": "82157c92544f49a2ade232627582f41e",
      "Id": "7c29e28fe49c4e43a23da913dac95aef"
    },
    {
      "Start": "1d3dacfed6f84dbb8a775fc5c5177284",
      "End": "3471cd2c362e43079ddc2100e6a03d42",
      "Id": "f94c849eb5754521b61c2c8a27659bf7"
    },
    {
      "Start": "f4bc9968b5c04d1aad105aa6cc04fefa",
      "End": "82d47db2679143f3b8fc2e65b4c0f1ba",
      "Id": "6dd43dda7f754fa4b20ae43bece711dd"
    },
    {
      "Start": "d5a84b8cf18f4e1dade5a91d3d807f34",
      "End": "2c8401f81eae436789c201775fb2e5b7",
      "Id": "a117a13937d2457cb8770e766d1f3d52"
    },
    {
      "Start": "1a4a070abdca4e898166170165bd3519",
      "End": "4b829e7e4096412b818bb1e6904fa724",
      "Id": "c406fe2b0b7c4369b5b0159bf8b5c382"
    },
    {
      "Start": "5e0fe9c73791455495754088f8e4ade2",
      "End": "ef0e7afa8531401aa8810e1c5bdf6c0c",
      "Id": "bbd23a7dda3e427bad9a02033b6b6514"
    },
    {
      "Start": "1e78bd397c754255913570e206b9e65b",
      "End": "9909d362a82346da8af0d6e749eb43f2",
      "Id": "b28684c21e354f3f9cd9b0ebad99d5a8"
    },
    {
      "Start": "8252bb26857a4086855c7238d190a067",
      "End": "2a31c696048b4c4e864a957c999ff8ea",
      "Id": "80dc950550964e99834c5a991554a8ca"
    },
    {
      "Start": "f376b32c497f48d9b191df15e83f3668",
      "End": "c9849a901399423dae0bcaf1e7d09af7",
      "Id": "8f0fef67f2fc493ebefe05811826235d"
    },
    {
      "Start": "2b04313066d64ff2a7c4b7d4af6970dd",
      "End": "cab12d6986434a799defd37b8b20b9a6",
      "Id": "d241467c0c0e4298922f391a29ff107c"
    },
    {
      "Start": "3adb2afb9aa547c89ab87808c856b0d2",
      "End": "28b1483079c64afe87eb82dd83670576",
      "Id": "7d0c46006f404093930c02baffd0edfa"
    },
    {
      "Start": "3adb2afb9aa547c89ab87808c856b0d2",
      "End": "0902b1465903466899fe65d5ef7fbfed",
      "Id": "984b5af4924a481984b5d7fae1d05f25"
    },
    {
      "Start": "b04743dbad26472b8fc844b5f51af1fb",
      "End": "96e38925a2b34cea9c2be16a2f65c381",
      "Id": "72eec0dca23343f0bc4982e7139b3b44"
    },
    {
      "Start": "c8e7a0209ed1411b98d05e03e46b7846",
      "End": "106e286219ee4e61874fad106831eebb",
      "Id": "d134d84d7892479989fd199fa00166f4"
    },
    {
      "Start": "1d047cf33b284aa5bb0b96176354809e",
      "End": "77ef7b6e5cc641de88ed2c86e3c9df87",
      "Id": "8687c2c9d22c4c00b68d59c88bbf3fe8"
    },
    {
      "Start": "1d047cf33b284aa5bb0b96176354809e",
      "End": "1c72e39d53f74402bd45dea95a447155",
      "Id": "5bcec75028ed431ab1267969e12db0bb"
    },
    {
      "Start": "4639932b950840bb948a7d736620a731",
      "End": "8bdbe44fa3244d66a5d5d74cdfbc016a",
      "Id": "71e7fd17fcaf4572b9805669db4853d5"
    },
    {
      "Start": "c4176159079a4dbaa71333087a75f428",
      "End": "feea5be52c6d4fb5b4249511fb540d8b",
      "Id": "e85db49c617b4c6fa29ff211f4d9f258"
    },
    {
      "Start": "c4176159079a4dbaa71333087a75f428",
      "End": "de995e8fc4174d9eb2d0af6903e0de64",
      "Id": "4b57686f1c624b9b985e4b08fa5d6fcf"
    },
    {
      "Start": "9cf925095065475b956a968c978d49f6",
      "End": "bdc735636cf84ea7a5380e8bd7c61f0e",
      "Id": "5f8dc69a370346e596550826d3924987"
    },
    {
      "Start": "1c18f01889704b37b1a65d53fa146359",
      "End": "f421cb56105f4f2bba4b462215409998",
      "Id": "7d03291672a44266a02b36bff4223879"
    },
    {
      "Start": "81ebfdb5d1b04406bb9b859dbcde8798",
      "End": "9f110ab80197405a88f0d21203749fdf",
      "Id": "4fd83a60821444e58a7324ac6f905199"
    },
    {
      "Start": "0747a1d21add46d1aab3fa0bef72c1c6",
      "End": "bcde3b6eca154406bc88a31bc35a2db6",
      "Id": "a8a454ebbbfb4fa596c921cc1e8ec244"
    },
    {
      "Start": "8dbb4ad2aa2d4e3ab953784f7c38ab7f",
      "End": "f1a333288a564340bfdd0c1ccc18e23d",
      "Id": "55499c6b79384c03b8ecb3afd6d5e781"
    },
    {
      "Start": "5e652ee0ae2d423e9e164fc8bab0200a",
      "End": "8c362c8f4838434a981af9d12f6b6b9f",
      "Id": "e6cb01d8b24e43c98f2b20d5fa5b4b26"
    },
    {
      "Start": "ebca644622204a95b5b327b778b60bd4",
      "End": "6a2e83d1d2594611b5aefd5ff6e1e37b",
      "Id": "9eec4d03914c476fa004560ec5cf7b0c"
    },
    {
      "Start": "4c1cfd7064fb4ee18c72d7c76514f0f6",
      "End": "d4ef6c8e726a41f0b2fb1114fdf3ed17",
      "Id": "c6d7c3f8955a42898eba256cf2af45b5"
    },
    {
      "Start": "37f1abfe2c4545e2b78180ab63a6acb3",
      "End": "90d5c96a60934f258c133420fd6d302b",
      "Id": "901e87b3ae5d4d5f87b5c997f805fade"
    },
    {
      "Start": "c3011bccc780492d9e24e5ce7dcdb496",
      "End": "9bf27c46f6f544e68271a251218a58de",
      "Id": "2b9528502b464254934e9291bd05c648"
    },
    {
      "Start": "57b9ed58982941ffb2a0af8ae8d5b108",
      "End": "103f1cf10d394dddafdaa0b62087c1e0",
      "Id": "ed962e9c4aa641a39ae7e8e44c61a136"
    },
    {
      "Start": "ded0bf5aca6d4681b2a478ab72e3cd32",
      "End": "33fde945c4a74fde9750749108fe2b26",
      "Id": "58d243272e4446ceb7cc3e9514c5d1c2"
    },
    {
      "Start": "1f7c5b5bf56e4305bfdfcf6076c8c94c",
      "End": "ddf6f677c2e341b18fb6ca51d4d39ac3",
      "Id": "09e4abbf70794b40b0bffb5acbaaee34"
    },
    {
      "Start": "d0e0bcfa7c8844b88ba3440bf4eb8d1b",
      "End": "7701be51136e424db18e78f07ae93d48",
      "Id": "db6a6bd52d344d0c844f76b14d841443"
    },
    {
      "Start": "d0e0bcfa7c8844b88ba3440bf4eb8d1b",
      "End": "4b08acbc5103431db92f1fedd0150fba",
      "Id": "1924b1bf30684818b228849a6ac20e48"
    },
    {
      "Start": "b9294f9d934b49219ea4609973d87a68",
      "End": "9be4910361fa452bbb483dd37594cebd",
      "Id": "385c3b4ffbde41b89784733c570ffd15"
    },
    {
      "Start": "55274e20311843eab996bc876b661d84",
      "End": "c924d86346634b8e8fe65c125326e9c8",
      "Id": "40a1440fd9164701b4ca1079d029df53"
    },
    {
      "Start": "62c4c743a347457096c7d2d9aff6d8f6",
      "End": "eb722ca7ea314370a0c046834de2ec36",
      "Id": "16faaff3759841dab11df44d5732e908"
    },
    {
      "Start": "16192daee04d41b0a88583fd25a58529",
      "End": "dd00f5589c714267af2830212038b5c3",
      "Id": "8b6ee161553f4433941329f7698b0107"
    },
    {
      "Start": "478454acda704ff9afea5d6f772aa4d9",
      "End": "6b5bb523def7491ba78d1065aea13c8a",
      "Id": "092c7562fe144acab92e837286f476e2"
    },
    {
      "Start": "9ddba40ffb9e4aa3830a707918318a87",
      "End": "d7fbc287545c486aa48f75dc778a5af7",
      "Id": "7a839ac969624b8fa5bf2a675ea4e0da"
    },
    {
      "Start": "4db322fc590f42c58cb6b911cac26a53",
      "End": "e2a8863978e84c299c95c29d48621eb3",
      "Id": "f5fd14a35f1d4b6ca1ec9b30a8781ffc"
    },
    {
      "Start": "827a350afd26428d9508f7098fec3a6e",
      "End": "0883c974b9cc4e15b62cd1d73e86af5c",
      "Id": "301fe0d10a994d6185ee20fc9cedc0f8"
    },
    {
      "Start": "827a350afd26428d9508f7098fec3a6e",
      "End": "0d1f5b7010ce4a5a97a7985d71f6f1c4",
      "Id": "befc73bb9da2462292ddfdbff438fddc"
    },
    {
      "Start": "827a350afd26428d9508f7098fec3a6e",
      "End": "21f37a8ff508418cb5d227a08d0ca72c",
      "Id": "98b03073c3db4a78bb8db38006c65ac7"
    },
    {
      "Start": "827a350afd26428d9508f7098fec3a6e",
      "End": "17a3a1aafa744ecf9cce64423383a33f",
      "Id": "4be8f11deb38402399928bb285a98e6e"
    },
    {
      "Start": "4b3d5274b929452f96c11e858c23368b",
      "End": "ff5007371363453199e9d4e8d3af1c40",
      "Id": "885a523d5a88473d845ca76535fbdc6d"
    },
    {
      "Start": "de19208b0ea942298bf88c99b84b898d",
      "End": "63a60205ea114cbb959af2cff5583a70",
      "Id": "ffe453b19d85471dbacb40ac21f17ff0"
    },
    {
      "Start": "5ff0a7b65edc4138bec090fa0b9785e6",
      "End": "226c52052e3647709797472f5ead3076",
      "Id": "5ff6e5e885894f0db92ade187ef88b03"
    }
  ],
  "Dependencies": [
    "f3262378-975c-40f8-bf70-5867e7837b75",
    "098af804-e737-4150-82b8-ef3bafda7248"
  ],
  "Bindings": [],
  "View": {
    "Dynamo": {
      "ScaleFactor": 1.0,
      "HasRunWithoutCrash": true,
      "IsVisibleInDynamoLibrary": true,
      "Version": "2.0.2.6826",
      "RunType": "Manual",
      "RunPeriod": "1000"
    },
    "Camera": {
      "Name": "Background Preview",
      "EyeX": -2318.9343634161796,
      "EyeY": 3754.5194142699479,
      "EyeZ": 1519.2443448880658,
      "LookX": 1155.8350425459867,
      "LookY": -4036.780954030713,
      "LookZ": -716.94504351748219,
      "UpX": 0.72841638340455106,
      "UpY": 0.51503808312245636,
      "UpZ": -0.45182441692032327
    },
    "NodeViews": [
      {
        "ShowGeometry": true,
        "Name": "Category.ByName",
        "Id": "12c56b727c1b48229ec7e0e82b39d80a",
        "IsSetAsInput": false,
        "IsSetAsOutput": false,
        "Excluded": false,
        "X": 193.31767689469956,
        "Y": 242.4858266664196
      },
      {
        "ShowGeometry": true,
        "Name": "Code Block",
        "Id": "4176baefca444cb5a47eb70b851b1ae0",
        "IsSetAsInput": false,
        "IsSetAsOutput": false,
        "Excluded": false,
        "X": -5.6988580699654676,
        "Y": 243.21400917879663
      },
      {
        "ShowGeometry": false,
        "Name": "All Elements of Category",
        "Id": "7d1d729cdd0d42e295820e626ac52a10",
        "IsSetAsInput": false,
        "IsSetAsOutput": false,
        "Excluded": false,
        "X": 450.46318458375163,
        "Y": 247.54535253921364
      },
      {
        "ShowGeometry": false,
        "Name": "Element.Faces",
        "Id": "e0ee879593eb4cc8b82bad42c52a8705",
        "IsSetAsInput": false,
        "IsSetAsOutput": false,
        "Excluded": false,
        "X": 2358.4242557511943,
        "Y": -99.973322889793337
      },
      {
        "ShowGeometry": true,
        "Name": "Surface.NormalAtParameter",
        "Id": "2d5757c9a54346a6bafc1400b50e4a43",
        "IsSetAsInput": false,
        "IsSetAsOutput": false,
        "Excluded": false,
        "X": 2961.7418908230143,
        "Y": 44.310034126839128
      },
      {
        "ShowGeometry": true,
        "Name": "Code Block",
        "Id": "0d943e8bf9674c6c81ab7802bf299c55",
        "IsSetAsInput": false,
        "IsSetAsOutput": false,
        "Excluded": false,
        "X": 2681.4242557511943,
        "Y": 34.346677110206656
      },
      {
        "ShowGeometry": true,
        "Name": "List.AllIndicesOf",
        "Id": "72e9cc3771f24448a2c23f37d6f4eb04",
        "IsSetAsInput": false,
        "IsSetAsOutput": false,
        "Excluded": false,
        "X": 3769.4242557511943,
        "Y": -12.079989556459964
      },
      {
        "ShowGeometry": true,
        "Name": "Code Block",
        "Id": "d6ae5fc63cd04acbbb9097b1cb1bc8bd",
        "IsSetAsInput": false,
        "IsSetAsOutput": false,
        "Excluded": false,
        "X": 3424.0124311102945,
        "Y": 111.80401991685972
      },
      {
        "ShowGeometry": true,
        "Name": "Code Block",
        "Id": "5d3dba97d78b401d93d1f1e29998e468",
        "IsSetAsInput": false,
        "IsSetAsOutput": false,
        "Excluded": false,
        "X": 3251.4830393239281,
        "Y": 46.629245817445735
      },
      {
        "ShowGeometry": true,
        "Name": "List.GetItemAtIndex",
        "Id": "6bf897deae3a4f95b47aa362b87c8b8c",
        "IsSetAsInput": false,
        "IsSetAsOutput": false,
        "Excluded": false,
        "X": 4039.4830393239281,
        "Y": -185.82147768913882
      },
      {
        "ShowGeometry": false,
        "Name": "List.Flatten",
        "Id": "05afac53cd7e49589bb5b4be916a5ab0",
        "IsSetAsInput": false,
        "IsSetAsOutput": false,
        "Excluded": false,
        "X": 2681.4242557511943,
        "Y": -98.915444434161088
      },
      {
        "ShowGeometry": false,
        "Name": "Topography.Mesh",
        "Id": "4e7028693648482191464fb00b8cc6de",
        "IsSetAsInput": false,
        "IsSetAsOutput": false,
        "Excluded": false,
        "X": 9723.738153412929,
        "Y": 2509.9111673107177
      },
      {
        "ShowGeometry": false,
        "Name": "Topography.Points",
        "Id": "82cb3ce743a54443ba0f15eeb3211224",
        "IsSetAsInput": false,
        "IsSetAsOutput": false,
        "Excluded": false,
        "X": 8510.89747578849,
        "Y": 3236.6528874981122
      },
      {
        "ShowGeometry": true,
        "Name": "Select Existing Topography",
        "Id": "3563efcde2524d3bb48edd17ffeb8343",
        "IsSetAsInput": false,
        "IsSetAsOutput": false,
        "Excluded": false,
        "X": 7955.2050725588451,
        "Y": 2975.7802958684783
      },
      {
        "ShowGeometry": true,
        "Name": "Element.GetParameterValueByName",
        "Id": "bbc39986480f4ca78518db40d16cb7c8",
        "IsSetAsInput": false,
        "IsSetAsOutput": false,
        "Excluded": false,
        "X": 757.31677221068867,
        "Y": -73.9509534754427
      },
      {
        "ShowGeometry": true,
        "Name": "Code Block",
        "Id": "853c6986b13147988a676e05845f0623",
        "IsSetAsInput": false,
        "IsSetAsOutput": false,
        "Excluded": false,
        "X": 561.31677221068867,
        "Y": -43.737620142109392
      },
      {
        "ShowGeometry": true,
        "Name": "Math.Round",
        "Id": "6bca9cfed86e4e15859a345a001f4930",
        "IsSetAsInput": false,
        "IsSetAsOutput": false,
        "Excluded": false,
        "X": 3424.0124311102945,
        "Y": -22.409313416473651
      },
      {
        "ShowGeometry": false,
        "Name": "Surface.PerimeterCurves",
        "Id": "f5e30a8486324398bc89364948db6087",
        "IsSetAsInput": false,
        "IsSetAsOutput": false,
        "Excluded": false,
        "X": 4758.5613556736444,
        "Y": -149.02455815675773
      },
      {
        "ShowGeometry": false,
        "Name": "Curve.StartPoint",
        "Id": "de59742727e74d618b40287727ac5c67",
        "IsSetAsInput": false,
        "IsSetAsOutput": false,
        "Excluded": false,
        "X": 5517.4175328569336,
        "Y": 955.4401498419536
      },
      {
        "ShowGeometry": true,
        "Name": "Level filter",
        "Id": "82080a70a8d44212b1e3285b3e68b950",
        "IsSetAsInput": true,
        "IsSetAsOutput": false,
        "Excluded": false,
        "X": 393.77070984824616,
        "Y": -742.88060409799186
      },
      {
        "ShowGeometry": true,
        "Name": "If",
        "Id": "64d834d064684c2fbfebd70fd7570c49",
        "IsSetAsInput": false,
        "IsSetAsOutput": false,
        "Excluded": false,
        "X": 1674.3167722106887,
        "Y": -90.9509534754427
      },
      {
        "ShowGeometry": true,
        "Name": "Code Block",
        "Id": "a74cee54492146338381873445d14327",
        "IsSetAsInput": false,
        "IsSetAsOutput": false,
        "Excluded": false,
        "X": 1405.3167722106887,
        "Y": -6.5242868087760257
      },
      {
        "ShowGeometry": true,
        "Name": "Element.Id",
        "Id": "5af67a1a76484e80a3b2fbdf94f92220",
        "IsSetAsInput": false,
        "IsSetAsOutput": false,
        "Excluded": false,
        "X": 1120.3167722106887,
        "Y": -181.9509534754427
      },
      {
        "ShowGeometry": true,
        "Name": "Element.Id",
        "Id": "446d1d8b1a6c4fd293c15f7a0c915a8f",
        "IsSetAsInput": false,
        "IsSetAsOutput": false,
        "Excluded": false,
        "X": 1120.3167722106887,
        "Y": -73.9509534754427
      },
      {
        "ShowGeometry": true,
        "Name": "==",
        "Id": "aba1eaeec0a5414d94714c86ecdd5bcd",
        "IsSetAsInput": false,
        "IsSetAsOutput": false,
        "Excluded": false,
        "X": 1405.3167722106887,
        "Y": -140.9509534754427
      },
      {
        "ShowGeometry": true,
        "Name": "List.Clean",
        "Id": "db8f37ffdb7643f5a60c8228a5bc8435",
        "IsSetAsInput": false,
        "IsSetAsOutput": false,
        "Excluded": false,
        "X": 1901.3167722106887,
        "Y": -90.9509534754427
      },
      {
        "ShowGeometry": true,
        "Name": "Code Block",
        "Id": "6bd81e5fe8174ecdb4858af031579cd2",
        "IsSetAsInput": false,
        "IsSetAsOutput": false,
        "Excluded": false,
        "X": 6087.4175328569336,
        "Y": 1184.3752140600886
      },
      {
        "ShowGeometry": false,
        "Name": "List.Flatten",
        "Id": "eabc8a1aa5e14836bd92c87320cdd30e",
        "IsSetAsInput": false,
        "IsSetAsOutput": false,
        "Excluded": false,
        "X": 5801.4175328569336,
        "Y": 955.4401498419536
      },
      {
        "ShowGeometry": true,
        "Name": "List.MinimumItem",
        "Id": "ede3ef117681417980e5053ed3c095ae",
        "IsSetAsInput": false,
        "IsSetAsOutput": false,
        "Excluded": false,
        "X": 6269.4175328569336,
        "Y": 1178.9052985582018
      },
      {
        "ShowGeometry": false,
        "Name": "ꟿ Points.ConvexHull2D",
        "Id": "459916609d414f13ac00dd41c7ff8b15",
        "IsSetAsInput": false,
        "IsSetAsOutput": false,
        "Excluded": false,
        "X": 9256.6143954822328,
        "Y": 489.76953932742896
      },
      {
        "ShowGeometry": true,
        "Name": "PolyCurve.ByPoints",
        "Id": "490467b4b4bb4255bb1032086dc1c414",
        "IsSetAsInput": false,
        "IsSetAsOutput": false,
        "Excluded": false,
        "X": 9841.1168743048656,
        "Y": 599.55616728426094
      },
      {
        "ShowGeometry": true,
        "Name": "Code Block",
        "Id": "8405376efba64825897199607ebd862b",
        "IsSetAsInput": false,
        "IsSetAsOutput": false,
        "Excluded": false,
        "X": 9514.9542912996149,
        "Y": 709.36417896467947
      },
      {
        "ShowGeometry": true,
        "Name": "Curve.Project",
        "Id": "0b4603c5f1044cd2a3cc01af592ff0bd",
        "IsSetAsInput": false,
        "IsSetAsOutput": false,
        "Excluded": false,
        "X": 6891.9317707118416,
        "Y": -648.78316333821431
      },
      {
        "ShowGeometry": false,
        "Name": "List.Flatten",
        "Id": "715bcdf34129480eb0f6cb448387243c",
        "IsSetAsInput": false,
        "IsSetAsOutput": false,
        "Excluded": false,
        "X": 4374.2629218683278,
        "Y": -203.32648313703589
      },
      {
        "ShowGeometry": true,
        "Name": "Vector.ZAxis",
        "Id": "2776d0df565048adaabcae9de23f5ac8",
        "IsSetAsInput": false,
        "IsSetAsOutput": false,
        "Excluded": false,
        "X": 6427.0758563816635,
        "Y": -461.00452740859282
      },
      {
        "ShowGeometry": true,
        "Name": "Plane.ByOriginNormal",
        "Id": "14e39dcc16654241b25abd3f77ee4d18",
        "IsSetAsInput": false,
        "IsSetAsOutput": false,
        "Excluded": false,
        "X": 6594.9317707118416,
        "Y": -622.78316333821431
      },
      {
        "ShowGeometry": false,
        "Name": "Point.ByCoordinates",
        "Id": "7a1c91ae68324c1e8a97eea4a9296e33",
        "IsSetAsInput": false,
        "IsSetAsOutput": false,
        "Excluded": false,
        "X": 6370.0831480093984,
        "Y": -655.1250258394457
      },
      {
        "ShowGeometry": true,
        "Name": "Code Block",
        "Id": "e1fa300fe2ed42cebd0aa6eb1c306eab",
        "IsSetAsInput": false,
        "IsSetAsOutput": false,
        "Excluded": false,
        "X": 6097.9777787760013,
        "Y": -670.04301528730821
      },
      {
        "ShowGeometry": false,
        "Name": "List.Map",
        "Id": "60e1febd4d934bb18ce627026e20dda7",
        "IsSetAsInput": false,
        "IsSetAsOutput": false,
        "Excluded": false,
        "X": 5026.9394632017638,
        "Y": -291.39748310166226
      },
      {
        "ShowGeometry": false,
        "Name": "List.Map",
        "Id": "614477f7b8e842aea02bbb3fc81a7ec8",
        "IsSetAsInput": false,
        "IsSetAsOutput": false,
        "Excluded": false,
        "X": 7275.939519747647,
        "Y": -752.45449190573663
      },
      {
        "ShowGeometry": false,
        "Name": "List.FirstItem",
        "Id": "46b632c928ef48c69f3511d77bb9278f",
        "IsSetAsInput": false,
        "IsSetAsOutput": false,
        "Excluded": false,
        "X": 7530.9317707118416,
        "Y": -677.554118785082
      },
      {
        "ShowGeometry": false,
        "Name": "PolyCurve.ByJoinedCurves",
        "Id": "1259c430042e4acaa27d9fa4194578f6",
        "IsSetAsInput": false,
        "IsSetAsOutput": false,
        "Excluded": false,
        "X": 7899.2341051407184,
        "Y": -683.59236467003689
      },
      {
        "ShowGeometry": false,
        "Name": "Surface.ByPatch",
        "Id": "ea8adb52c7ef487aa5f95b8ef7310c22",
        "IsSetAsInput": false,
        "IsSetAsOutput": false,
        "Excluded": false,
        "X": 8261.2341051407184,
        "Y": -683.59236467003689
      },
      {
        "ShowGeometry": false,
        "Name": "Surface.Thicken",
        "Id": "953bced3ea3f4e6faacdb85aca212f4d",
        "IsSetAsInput": false,
        "IsSetAsOutput": false,
        "Excluded": false,
        "X": 8600.2341051407184,
        "Y": -657.59236467003689
      },
      {
        "ShowGeometry": true,
        "Name": "Code Block",
        "Id": "68ef588d7aa4435a899054f711d9def3",
        "IsSetAsInput": false,
        "IsSetAsOutput": false,
        "Excluded": false,
        "X": 8261.2341051407184,
        "Y": -575.37903133670352
      },
      {
        "ShowGeometry": false,
        "Name": "Solid.ByUnion",
        "Id": "3b7031fea6994c71b038bb311318e849",
        "IsSetAsInput": false,
        "IsSetAsOutput": false,
        "Excluded": false,
        "X": 8914.2341051407184,
        "Y": -657.59236467003689
      },
      {
        "ShowGeometry": false,
        "Name": "Geometry.Explode",
        "Id": "25fe26ea30354c24a0fe9680ff6550d0",
        "IsSetAsInput": false,
        "IsSetAsOutput": false,
        "Excluded": false,
        "X": 9297.16170180884,
        "Y": -863.63420331276689
      },
      {
        "ShowGeometry": false,
        "Name": "List.Flatten",
        "Id": "aed4c0b032764fad9938ab52d3aea514",
        "IsSetAsInput": false,
        "IsSetAsOutput": false,
        "Excluded": false,
        "X": 9648.7562836192938,
        "Y": -958.74209409047421
      },
      {
        "ShowGeometry": true,
        "Name": "Code Block",
        "Id": "137f014ebdf14f00a585e2759ddf4657",
        "IsSetAsInput": false,
        "IsSetAsOutput": false,
        "Excluded": false,
        "X": 9643.16170180884,
        "Y": -729.314203312767
      },
      {
        "ShowGeometry": true,
        "Name": "Surface.NormalAtParameter",
        "Id": "2fb47c50147a49eb89069f51a7d8b235",
        "IsSetAsInput": false,
        "IsSetAsOutput": false,
        "Excluded": false,
        "X": 9929.16170180884,
        "Y": -823.52753664610009
      },
      {
        "ShowGeometry": true,
        "Name": "Code Block",
        "Id": "18c846097592488b840a7968654b536e",
        "IsSetAsInput": false,
        "IsSetAsOutput": false,
        "Excluded": false,
        "X": 10232.16170180884,
        "Y": -819.314203312767
      },
      {
        "ShowGeometry": true,
        "Name": "Math.Round",
        "Id": "4567df32d15f49dc9ba80d4794652059",
        "IsSetAsInput": false,
        "IsSetAsOutput": false,
        "Excluded": false,
        "X": 10414.16170180884,
        "Y": -827.74086997943368
      },
      {
        "ShowGeometry": true,
        "Name": "Code Block",
        "Id": "d59293e13bc9446e8ad87e4e3cae3fbd",
        "IsSetAsInput": false,
        "IsSetAsOutput": false,
        "Excluded": false,
        "X": 10414.16170180884,
        "Y": -693.52753664610009
      },
      {
        "ShowGeometry": true,
        "Name": "List.AllIndicesOf",
        "Id": "40901b6362ea4af194f1e1fe3133e771",
        "IsSetAsInput": false,
        "IsSetAsOutput": false,
        "Excluded": false,
        "X": 10731.16170180884,
        "Y": -775.74086997943368
      },
      {
        "ShowGeometry": true,
        "Name": "List.GetItemAtIndex",
        "Id": "eb28a4c95eae4d98a2ad1e8bacf87f9c",
        "IsSetAsInput": false,
        "IsSetAsOutput": false,
        "Excluded": false,
        "X": 10988.459071549605,
        "Y": -984.49720912091038
      },
      {
        "ShowGeometry": true,
        "Name": "Surface.PerimeterCurves",
        "Id": "b6665b49cb04414b9246ef66b233fecb",
        "IsSetAsInput": false,
        "IsSetAsOutput": false,
        "Excluded": false,
        "X": 11679.544496591434,
        "Y": -952.15440397602015
      },
      {
        "ShowGeometry": false,
        "Name": "List.Flatten",
        "Id": "21502070bfbf4e0fb95427988d589526",
        "IsSetAsInput": false,
        "IsSetAsOutput": false,
        "Excluded": false,
        "X": 11393.129892834213,
        "Y": -1006.9172234992197
      },
      {
        "ShowGeometry": true,
        "Name": "Code Block",
        "Id": "6900a30334d541c2ac5b14d40d454d32",
        "IsSetAsInput": false,
        "IsSetAsOutput": false,
        "Excluded": false,
        "X": 8816.8967639419843,
        "Y": 3250.9741813662008
      },
      {
        "ShowGeometry": true,
        "Name": "List.MaximumItem",
        "Id": "4c52e0fbf4cc4b04aa0f8be7112114dc",
        "IsSetAsInput": false,
        "IsSetAsOutput": false,
        "Excluded": false,
        "X": 8998.8967639419843,
        "Y": 3192.7608480328709
      },
      {
        "ShowGeometry": true,
        "Name": "Polygon.ByPoints",
        "Id": "d8357f13a5024c4ca4f858da38fd5625",
        "IsSetAsInput": false,
        "IsSetAsOutput": false,
        "Excluded": false,
        "X": 14550.384377720862,
        "Y": 353.37011816368522
      },
      {
        "ShowGeometry": true,
        "Name": "List.FirstItem",
        "Id": "13b3603d46214dfaae5636a8e79c8192",
        "IsSetAsInput": false,
        "IsSetAsOutput": false,
        "Excluded": false,
        "X": 13108.603795064993,
        "Y": 41.222377849985605
      },
      {
        "ShowGeometry": false,
        "Name": "List.Flatten",
        "Id": "068a9f76b7b2448285339ed7f19baf2f",
        "IsSetAsInput": false,
        "IsSetAsOutput": false,
        "Excluded": false,
        "X": 12822.603795064993,
        "Y": 41.222377849985605
      },
      {
        "ShowGeometry": true,
        "Name": "Curve.PointAtParameter",
        "Id": "d33deae0286c410b9bb28450a3a72a92",
        "IsSetAsInput": false,
        "IsSetAsOutput": false,
        "Excluded": false,
        "X": 13371.603795064993,
        "Y": 80.2223778499856
      },
      {
        "ShowGeometry": true,
        "Name": "Code Block",
        "Id": "a0c28d767b224f88b98bd08df13be148",
        "IsSetAsInput": false,
        "IsSetAsOutput": false,
        "Excluded": false,
        "X": 13108.603795064993,
        "Y": 149.4357111833192
      },
      {
        "ShowGeometry": true,
        "Name": "Point.Add",
        "Id": "67c8f8d85a4f428398090f9e138a8e62",
        "IsSetAsInput": false,
        "IsSetAsOutput": false,
        "Excluded": false,
        "X": 13614.24000599749,
        "Y": 359.76185721259435
      },
      {
        "ShowGeometry": true,
        "Name": "List Create",
        "Id": "179150644a7e4cd38f0140ec7c6e9dbc",
        "IsSetAsInput": false,
        "IsSetAsOutput": false,
        "Excluded": false,
        "X": 14352.043973038819,
        "Y": 375.39302563847559
      },
      {
        "ShowGeometry": true,
        "Name": "-",
        "Id": "04216dfd5625458e88d796e2673100af",
        "IsSetAsInput": false,
        "IsSetAsOutput": false,
        "Excluded": false,
        "X": 12269.791956753561,
        "Y": 1363.2717911619359
      },
      {
        "ShowGeometry": true,
        "Name": "Vector.ByCoordinates",
        "Id": "bb108d6e654b4ee8be01418caec6c1bf",
        "IsSetAsInput": false,
        "IsSetAsOutput": false,
        "Excluded": false,
        "X": 13349.24000599749,
        "Y": 385.76185721259435
      },
      {
        "ShowGeometry": true,
        "Name": "Code Block",
        "Id": "ee69dfa3ed7a4762b95fc25053c34cde",
        "IsSetAsInput": false,
        "IsSetAsOutput": false,
        "Excluded": false,
        "X": 13104.413760335501,
        "Y": 373.35450022495934
      },
      {
        "ShowGeometry": true,
        "Name": "Point.Add",
        "Id": "b1b9279772064c59b925e5a8378c208f",
        "IsSetAsInput": false,
        "IsSetAsOutput": false,
        "Excluded": false,
        "X": 14077.452750978011,
        "Y": 843.4723480990026
      },
      {
        "ShowGeometry": true,
        "Name": "PolyCurve.Curves",
        "Id": "22f1120c32bf4ec988a175332bb35754",
        "IsSetAsInput": false,
        "IsSetAsOutput": false,
        "Excluded": false,
        "X": 10198.03567103442,
        "Y": 767.02459018113018
      },
      {
        "ShowGeometry": true,
        "Name": "Curve.NormalAtParameter",
        "Id": "fd153f00791b406ca07444d092f04963",
        "IsSetAsInput": false,
        "IsSetAsOutput": false,
        "Excluded": false,
        "X": 13311.411153646646,
        "Y": 650.31480248036928
      },
      {
        "ShowGeometry": true,
        "Name": "Vector.Scale",
        "Id": "20e9ba0a469a4546a2c3b24c83868c99",
        "IsSetAsInput": false,
        "IsSetAsOutput": false,
        "Excluded": false,
        "X": 13704.056119644525,
        "Y": 861.46388237867245
      },
      {
        "ShowGeometry": true,
        "Name": "PolyCurve.ByJoinedCurves",
        "Id": "8768f534f34c4de3ad1897079d1b2d59",
        "IsSetAsInput": false,
        "IsSetAsOutput": false,
        "Excluded": false,
        "X": 12110.363718778906,
        "Y": -1024.2506833413502
      },
      {
        "ShowGeometry": false,
        "Name": "PolySurface.BySweep",
        "Id": "804c4bf864a64dd486c05d5f634a7e4a",
        "IsSetAsInput": false,
        "IsSetAsOutput": false,
        "Excluded": false,
        "X": 15270.372375283134,
        "Y": -113.77581366644847
      },
      {
        "ShowGeometry": false,
        "Name": "Solid.ByJoinedSurfaces",
        "Id": "d530a1ac968e47099a549b6e57c21670",
        "IsSetAsInput": false,
        "IsSetAsOutput": false,
        "Excluded": false,
        "X": 15636.372375283134,
        "Y": -113.77581366644847
      },
      {
        "ShowGeometry": false,
        "Name": "ꟿ Mesh.ToPolySurface",
        "Id": "3938f19af90046959550cb5857331a22",
        "IsSetAsInput": false,
        "IsSetAsOutput": false,
        "Excluded": false,
        "X": 10045.738153412929,
        "Y": 2509.9111673107177
      },
      {
        "ShowGeometry": false,
        "Name": "PolySurface.Surfaces",
        "Id": "ee61cd7e6ef74d8395d35d1d11e47193",
        "IsSetAsInput": false,
        "IsSetAsOutput": false,
        "Excluded": false,
        "X": 10389.738153412931,
        "Y": 2509.9111673107177
      },
      {
        "ShowGeometry": false,
        "Name": "List.Flatten",
        "Id": "88e2938b18db407785d9c6b970a9b108",
        "IsSetAsInput": false,
        "IsSetAsOutput": false,
        "Excluded": false,
        "X": 10733.738153412931,
        "Y": 2509.9111673107177
      },
      {
        "ShowGeometry": true,
        "Name": "Surface.PerimeterCurves",
        "Id": "03aee568fab7431a88866382ddb701b1",
        "IsSetAsInput": false,
        "IsSetAsOutput": false,
        "Excluded": false,
        "X": 11019.738153412931,
        "Y": 2509.9111673107177
      },
      {
        "ShowGeometry": true,
        "Name": "Curve.Project",
        "Id": "31abc244ce5b46cf9f807c1caa2f96fe",
        "IsSetAsInput": false,
        "IsSetAsOutput": false,
        "Excluded": false,
        "X": 11180.177322419242,
        "Y": 3487.3983771381786
      },
      {
        "ShowGeometry": false,
        "Name": "Point.ByCoordinates",
        "Id": "abcdb397f89644b5b2cb0ecac7b97e38",
        "IsSetAsInput": false,
        "IsSetAsOutput": false,
        "Excluded": false,
        "X": 10625.177322419242,
        "Y": 3446.3983771381786
      },
      {
        "ShowGeometry": true,
        "Name": "Code Block",
        "Id": "dfdfbb09d2014fc1bb0491aada949d1d",
        "IsSetAsInput": false,
        "IsSetAsOutput": false,
        "Excluded": false,
        "X": 10446.177322419242,
        "Y": 3463.6117104715122
      },
      {
        "ShowGeometry": true,
        "Name": "Plane.ByOriginNormal",
        "Id": "4c504a79de6c49c1993176d3f80d4b2d",
        "IsSetAsInput": false,
        "IsSetAsOutput": false,
        "Excluded": false,
        "X": 10883.177322419242,
        "Y": 3513.3983771381786
      },
      {
        "ShowGeometry": true,
        "Name": "Vector.ZAxis",
        "Id": "a9dbe95c53794c28a1d6e4f0a6c21953",
        "IsSetAsInput": false,
        "IsSetAsOutput": false,
        "Excluded": false,
        "X": 10717.217235495011,
        "Y": 3681.3938618665829
      },
      {
        "ShowGeometry": true,
        "Name": "List.MinimumItem",
        "Id": "d65989bdcccb4a76a624e542cde6ec10",
        "IsSetAsInput": false,
        "IsSetAsOutput": false,
        "Excluded": false,
        "X": 8998.8967639419843,
        "Y": 3300.7608480328709
      },
      {
        "ShowGeometry": true,
        "Name": "List Create",
        "Id": "bb0d967c213847128ef62e364cb4dab1",
        "IsSetAsInput": false,
        "IsSetAsOutput": false,
        "Excluded": false,
        "X": 9510.0759035176088,
        "Y": 3506.8359808056448
      },
      {
        "ShowGeometry": true,
        "Name": "List.MinimumItem",
        "Id": "b4eb8f68b7cb4b5180ec13e86e8f8f5e",
        "IsSetAsInput": false,
        "IsSetAsOutput": false,
        "Excluded": false,
        "X": 9690.6693197363074,
        "Y": 3513.9349233604844
      },
      {
        "ShowGeometry": true,
        "Name": "Code Block",
        "Id": "e3fc2bcbb356469986aede543a82e231",
        "IsSetAsInput": false,
        "IsSetAsOutput": false,
        "Excluded": false,
        "X": 9962.691543677387,
        "Y": 3525.8579389534298
      },
      {
        "ShowGeometry": false,
        "Name": "List.FirstItem",
        "Id": "a76d21567e6a449da254f234bf10a90f",
        "IsSetAsInput": false,
        "IsSetAsOutput": false,
        "Excluded": false,
        "X": 11825.141074215338,
        "Y": 3387.3235509127571
      },
      {
        "ShowGeometry": false,
        "Name": "List.Map",
        "Id": "ca42e9001085497d903d970722a51b96",
        "IsSetAsInput": false,
        "IsSetAsOutput": false,
        "Excluded": false,
        "X": 11570.14882325114,
        "Y": 3312.4231777921068
      },
      {
        "ShowGeometry": false,
        "Name": "PolyCurve.ByJoinedCurves",
        "Id": "e8f7676a5ea14784941d53fa973a23db",
        "IsSetAsInput": false,
        "IsSetAsOutput": false,
        "Excluded": false,
        "X": 12392.627817749393,
        "Y": 2761.3394092342282
      },
      {
        "ShowGeometry": false,
        "Name": "PolyCurve.ByJoinedCurves",
        "Id": "9d1a479f17ca419ca9dbc48e0199b37f",
        "IsSetAsInput": false,
        "IsSetAsOutput": false,
        "Excluded": false,
        "X": 12407.31259513646,
        "Y": 2973.9806935285383
      },
      {
        "ShowGeometry": false,
        "Name": "List Create",
        "Id": "dad642035b7f4353badfd16941df696a",
        "IsSetAsInput": false,
        "IsSetAsOutput": false,
        "Excluded": false,
        "X": 12707.126431883135,
        "Y": 2847.1916113578404
      },
      {
        "ShowGeometry": false,
        "Name": "List.Transpose",
        "Id": "23aeab52c301450186c7c55698a43f8b",
        "IsSetAsInput": false,
        "IsSetAsOutput": false,
        "Excluded": false,
        "X": 12883.298371440229,
        "Y": 2854.2281976834483
      },
      {
        "ShowGeometry": false,
        "Name": "Solid.ByLoft",
        "Id": "302b003e892541f688617355b91dad56",
        "IsSetAsInput": false,
        "IsSetAsOutput": false,
        "Excluded": false,
        "X": 13261.606814290786,
        "Y": 2879.2888090206811
      },
      {
        "ShowGeometry": false,
        "Name": "Solid.ByUnion",
        "Id": "a981790649254e768f2db0d26ddee0ae",
        "IsSetAsInput": false,
        "IsSetAsOutput": false,
        "Excluded": false,
        "X": 13719.741495021572,
        "Y": 2832.895423630222
      },
      {
        "ShowGeometry": true,
        "Name": "If",
        "Id": "1d7b82ea33a84d4a87d18bdf8d5a7eb2",
        "IsSetAsInput": false,
        "IsSetAsOutput": false,
        "Excluded": false,
        "X": 12763.055714408834,
        "Y": -597.28317973259823
      },
      {
        "ShowGeometry": true,
        "Name": "Use exact boundary(only usable with low number of convex pads)",
        "Id": "0de23e2b47dc473aa04660767a7ad38f",
        "IsSetAsInput": true,
        "IsSetAsOutput": false,
        "Excluded": false,
        "X": 12023.417428247312,
        "Y": -552.2681009282519
      },
      {
        "ShowGeometry": true,
        "Name": "If",
        "Id": "906e808ee4ed4580839fc54853748d15",
        "IsSetAsInput": false,
        "IsSetAsOutput": false,
        "Excluded": false,
        "X": 12759.588570929873,
        "Y": -436.67779729468231
      },
      {
        "ShowGeometry": true,
        "Name": "Geometry.IntersectAll",
        "Id": "7001b72a2d8640bc81cf71b931a111c4",
        "IsSetAsInput": false,
        "IsSetAsOutput": false,
        "Excluded": false,
        "X": 15594.416248046298,
        "Y": 1725.2934256915862
      },
      {
        "ShowGeometry": true,
        "Name": "Solid.Volume",
        "Id": "ff4ba73700f24ea28ff2c6bbf6d299b5",
        "IsSetAsInput": false,
        "IsSetAsOutput": false,
        "Excluded": false,
        "X": 15940.416248046298,
        "Y": 1725.2934256915862
      },
      {
        "ShowGeometry": true,
        "Name": "Convert Between Units",
        "Id": "df71f0090d484ebfbd71cc7c627487f4",
        "IsSetAsInput": false,
        "IsSetAsOutput": false,
        "Excluded": false,
        "X": 16230.416248046298,
        "Y": 1725.2934256915862
      },
      {
        "ShowGeometry": true,
        "Name": "Math.Tan",
        "Id": "03684462791749f5bdb97ed06790476f",
        "IsSetAsInput": false,
        "IsSetAsOutput": false,
        "Excluded": false,
        "X": 13170.304487957861,
        "Y": 843.84780134556411
      },
      {
        "ShowGeometry": true,
        "Name": "Grading slope in degree",
        "Id": "668dc78b7932417bb4872b7a7d1fff68",
        "IsSetAsInput": true,
        "IsSetAsOutput": false,
        "Excluded": false,
        "X": 12153.95707114065,
        "Y": 537.76354105115684
      },
      {
        "ShowGeometry": true,
        "Name": "*",
        "Id": "6094fd4440fc4f1ca60251d0b51bb33f",
        "IsSetAsInput": false,
        "IsSetAsOutput": false,
        "Excluded": false,
        "X": 13462.370133707162,
        "Y": 896.83430577387844
      },
      {
        "ShowGeometry": true,
        "Name": "Use level and offset as bottom",
        "Id": "3777f66e2b294917a661bba39b80d1c2",
        "IsSetAsInput": true,
        "IsSetAsOutput": false,
        "Excluded": false,
        "X": 4649.4868831462427,
        "Y": 1371.7311481601205
      },
      {
        "ShowGeometry": true,
        "Name": "If",
        "Id": "dc17e6c480eb49b5a9ddcb13e94dd0a8",
        "IsSetAsInput": false,
        "IsSetAsOutput": false,
        "Excluded": false,
        "X": 7052.51726097921,
        "Y": 1487.4843303530433
      },
      {
        "ShowGeometry": true,
        "Name": "Level.Elevation",
        "Id": "e481edf2803b4b1382ff96446182c98f",
        "IsSetAsInput": false,
        "IsSetAsOutput": false,
        "Excluded": false,
        "X": 5482.45296764349,
        "Y": 1900.8097074905718
      },
      {
        "ShowGeometry": true,
        "Name": "Bottom offset",
        "Id": "375561998ecd496ca91dc33c39504454",
        "IsSetAsInput": true,
        "IsSetAsOutput": false,
        "Excluded": false,
        "X": 4647.9324320158157,
        "Y": 1473.9279467877991
      },
      {
        "ShowGeometry": true,
        "Name": "+",
        "Id": "7810b937827e45779fa71445f8aae8a5",
        "IsSetAsInput": false,
        "IsSetAsOutput": false,
        "Excluded": false,
        "X": 5755.6439624289133,
        "Y": 1781.112953723057
      }
    ],
    "Annotations": [
      {
        "Id": "429b7daf0c57462ba0a29fe181ac13cf",
        "Title": "Get all building pads",
        "Nodes": [
          "12c56b727c1b48229ec7e0e82b39d80a",
          "4176baefca444cb5a47eb70b851b1ae0",
          "7d1d729cdd0d42e295820e626ac52a10"
        ],
        "Left": -15.698858069965468,
        "Top": 196.4858266664196,
        "Width": 650.16204265371709,
        "Height": 144.05952587279404,
        "FontSize": 30.0,
        "InitialTop": 242.4858266664196,
        "InitialHeight": 150.05952587279404,
        "TextblockHeight": 36.0,
        "Background": "#FFC1D676"
      },
      {
        "Id": "e4150fa2206c4e1fb443c533e7493cf6",
        "Title": "Get bottom surface",
        "Nodes": [
          "e0ee879593eb4cc8b82bad42c52a8705",
          "2d5757c9a54346a6bafc1400b50e4a43",
          "0d943e8bf9674c6c81ab7802bf299c55",
          "72e9cc3771f24448a2c23f37d6f4eb04",
          "d6ae5fc63cd04acbbb9097b1cb1bc8bd",
          "5d3dba97d78b401d93d1f1e29998e468",
          "6bf897deae3a4f95b47aa362b87c8b8c",
          "05afac53cd7e49589bb5b4be916a5ab0",
          "6bca9cfed86e4e15859a345a001f4930"
        ],
        "Left": 2348.4242557511943,
        "Top": -231.82147768913882,
        "Width": 1880.0587835727338,
        "Height": 436.62549760599853,
        "FontSize": 30.0,
        "InitialTop": -185.82147768913882,
        "InitialHeight": 442.62549760599853,
        "TextblockHeight": 36.0,
        "Background": "#FFC1D676"
      },
      {
        "Id": "c94e36051ece4436bb7a2f86c0c7214c",
        "Title": "Filter by level",
        "Nodes": [
          "bbc39986480f4ca78518db40d16cb7c8",
          "853c6986b13147988a676e05845f0623",
          "64d834d064684c2fbfebd70fd7570c49",
          "a74cee54492146338381873445d14327",
          "5af67a1a76484e80a3b2fbdf94f92220",
          "446d1d8b1a6c4fd293c15f7a0c915a8f",
          "aba1eaeec0a5414d94714c86ecdd5bcd",
          "db8f37ffdb7643f5a60c8228a5bc8435"
        ],
        "Left": 551.31677221068867,
        "Top": -234.9509534754427,
        "Width": 1618.0,
        "Height": 331.42666666666668,
        "FontSize": 36.0,
        "InitialTop": -181.9509534754427,
        "InitialHeight": 320.42666666666668,
        "TextblockHeight": 43.0,
        "Background": "#FFC1D676"
      },
      {
        "Id": "658855f109ad4fef97ec457107115ede",
        "Title": "Level filter",
        "Nodes": [
          "82080a70a8d44212b1e3285b3e68b950"
        ],
        "Left": 383.77070984824616,
        "Top": -795.88060409799186,
        "Width": 169.0,
        "Height": 146.0,
        "FontSize": 36.0,
        "InitialTop": -742.88060409799186,
        "InitialHeight": 145.0,
        "TextblockHeight": 43.0,
        "Background": "#FFFF7BAC"
      },
      {
        "Id": "86f9a014f5584fa1a63adc32de01137c",
        "Title": "Lowest point Z",
        "Nodes": [
          "6bd81e5fe8174ecdb4858af031579cd2",
          "ede3ef117681417980e5053ed3c095ae",
          "eabc8a1aa5e14836bd92c87320cdd30e",
          "de59742727e74d618b40287727ac5c67"
        ],
        "Left": 5507.4175328569336,
        "Top": 902.4401498419536,
        "Width": 931.0,
        "Height": 374.93506421813504,
        "FontSize": 36.0,
        "InitialTop": 955.4401498419536,
        "InitialHeight": 373.93506421813504,
        "TextblockHeight": 43.0,
        "Background": "#FFC1D676"
      },
      {
        "Id": "d8ee91b6300e4d34b939cbc93d7e8a73",
        "Title": "Get perimeter curves",
        "Nodes": [
          "f5e30a8486324398bc89364948db6087",
          "715bcdf34129480eb0f6cb448387243c",
          "60e1febd4d934bb18ce627026e20dda7"
        ],
        "Left": 4364.2629218683278,
        "Top": -344.39748310166226,
        "Width": 806.676541333436,
        "Height": 288.37292494490453,
        "FontSize": 36.0,
        "InitialTop": -291.39748310166226,
        "InitialHeight": 287.37292494490453,
        "TextblockHeight": 43.0,
        "Background": "#FFC1D676"
      },
      {
        "Id": "432f37f82c614520a83c6ce609f6fabe",
        "Title": "Generate offsetted polycurves",
        "Nodes": [
          "0b4603c5f1044cd2a3cc01af592ff0bd",
          "2776d0df565048adaabcae9de23f5ac8",
          "14e39dcc16654241b25abd3f77ee4d18",
          "614477f7b8e842aea02bbb3fc81a7ec8",
          "46b632c928ef48c69f3511d77bb9278f",
          "e1fa300fe2ed42cebd0aa6eb1c306eab",
          "7a1c91ae68324c1e8a97eea4a9296e33"
        ],
        "Left": 6087.9777787760013,
        "Top": -805.45449190573663,
        "Width": 1615.9539919358403,
        "Height": 437.44996449714381,
        "FontSize": 36.0,
        "InitialTop": -752.45449190573663,
        "InitialHeight": 436.44996449714381,
        "TextblockHeight": 43.0,
        "Background": "#FFC1D676"
      },
      {
        "Id": "be6accb4713c453396a01f6c0318cee0",
        "Title": "Generate unioned solid",
        "Nodes": [
          "1259c430042e4acaa27d9fa4194578f6",
          "ea8adb52c7ef487aa5f95b8ef7310c22",
          "953bced3ea3f4e6faacdb85aca212f4d",
          "68ef588d7aa4435a899054f711d9def3",
          "3b7031fea6994c71b038bb311318e849"
        ],
        "Left": 7889.2341051407184,
        "Top": -736.59236467003689,
        "Width": 1219.0,
        "Height": 254.21333333333337,
        "FontSize": 36.0,
        "InitialTop": -683.59236467003689,
        "InitialHeight": 253.21333333333337,
        "TextblockHeight": 43.0,
        "Background": "#FFC1D676"
      },
      {
        "Id": "46d484cb2dbf4c16ad6f0615d7789a57",
        "Title": "Get bottom surface",
        "Nodes": [
          "25fe26ea30354c24a0fe9680ff6550d0",
          "aed4c0b032764fad9938ab52d3aea514",
          "137f014ebdf14f00a585e2759ddf4657",
          "2fb47c50147a49eb89069f51a7d8b235",
          "18c846097592488b840a7968654b536e",
          "4567df32d15f49dc9ba80d4794652059",
          "d59293e13bc9446e8ad87e4e3cae3fbd",
          "40901b6362ea4af194f1e1fe3133e771",
          "eb28a4c95eae4d98a2ad1e8bacf87f9c"
        ],
        "Left": 9287.16170180884,
        "Top": -1037.4972091209104,
        "Width": 1890.2973697407651,
        "Height": 436.9696724748103,
        "FontSize": 36.0,
        "InitialTop": -984.49720912091038,
        "InitialHeight": 435.9696724748103,
        "TextblockHeight": 43.0,
        "Background": "#FFC1D676"
      },
      {
        "Id": "5b90b4612a2048f09d16cc58dec372c3",
        "Title": "Curves for sweep",
        "Nodes": [
          "b6665b49cb04414b9246ef66b233fecb",
          "21502070bfbf4e0fb95427988d589526",
          "8768f534f34c4de3ad1897079d1b2d59"
        ],
        "Left": 11383.129892834213,
        "Top": -1077.2506833413502,
        "Width": 999.23382594469331,
        "Height": 218.09627936533002,
        "FontSize": 36.0,
        "InitialTop": -1024.2506833413502,
        "InitialHeight": 199.7628195231996,
        "TextblockHeight": 43.0,
        "Background": "#FFC1D676"
      },
      {
        "Id": "6a3ec04030dd46b789600a7b210c2c5f",
        "Title": "Topo max&min point Z",
        "Nodes": [
          "6900a30334d541c2ac5b14d40d454d32",
          "4c52e0fbf4cc4b04aa0f8be7112114dc",
          "d65989bdcccb4a76a624e542cde6ec10",
          "82cb3ce743a54443ba0f15eeb3211224"
        ],
        "Left": 8500.89747578849,
        "Top": 3139.7608480328709,
        "Width": 666.99928815349449,
        "Height": 254.0,
        "FontSize": 36.0,
        "InitialTop": 3192.7608480328709,
        "InitialHeight": 253.0,
        "TextblockHeight": 43.0,
        "Background": "#FFC1D676"
      },
      {
        "Id": "44c64d8d93be443990f7956a73725574",
        "Title": "Difference between topo max and pad min",
        "Nodes": [
          "04216dfd5625458e88d796e2673100af"
        ],
        "Left": 12259.791956753561,
        "Top": 1137.2717911619359,
        "Width": 189.0,
        "Height": 345.0,
        "FontSize": 36.0,
        "InitialTop": 1363.2717911619359,
        "InitialHeight": 145.0,
        "TextblockHeight": 216.0,
        "Background": "#FFC1D676"
      },
      {
        "Id": "c0e80009499c424e9037abaff8755a18",
        "Title": "Midpoint of first curve",
        "Nodes": [
          "d33deae0286c410b9bb28450a3a72a92",
          "a0c28d767b224f88b98bd08df13be148",
          "13b3603d46214dfaae5636a8e79c8192",
          "068a9f76b7b2448285339ed7f19baf2f"
        ],
        "Left": 12812.603795064993,
        "Top": -11.777622150014395,
        "Width": 760.0,
        "Height": 254.21333333333359,
        "FontSize": 36.0,
        "InitialTop": 41.222377849985605,
        "InitialHeight": 253.21333333333359,
        "TextblockHeight": 43.0,
        "Background": "#FFC1D676"
      },
      {
        "Id": "1941a092ce024e8d900d1516d4ab4890",
        "Title": "Top point for sweep",
        "Nodes": [
          "67c8f8d85a4f428398090f9e138a8e62",
          "bb108d6e654b4ee8be01418caec6c1bf",
          "ee69dfa3ed7a4762b95fc25053c34cde"
        ],
        "Left": 13094.413760335501,
        "Top": 306.76185721259435,
        "Width": 757.82624566198865,
        "Height": 224.0,
        "FontSize": 36.0,
        "InitialTop": 359.76185721259435,
        "InitialHeight": 171.0,
        "TextblockHeight": 43.0,
        "Background": "#FFC1D676"
      },
      {
        "Id": "b850a55894f74dada0e1248b33baa989",
        "Title": "Polygon to sweep",
        "Nodes": [
          "d8357f13a5024c4ca4f858da38fd5625",
          "179150644a7e4cd38f0140ec7c6e9dbc"
        ],
        "Left": 14342.043973038819,
        "Top": 300.37011816368522,
        "Width": 423.3404046820433,
        "Height": 220.02290747479037,
        "FontSize": 36.0,
        "InitialTop": 353.37011816368522,
        "InitialHeight": 167.02290747479037,
        "TextblockHeight": 43.0,
        "Background": "#FFC1D676"
      },
      {
        "Id": "5a4915cfa1ab460d9b3b3bb001e13992",
        "Title": "Convex hull curves",
        "Nodes": [
          "459916609d414f13ac00dd41c7ff8b15",
          "490467b4b4bb4255bb1032086dc1c414",
          "8405376efba64825897199607ebd862b",
          "22f1120c32bf4ec988a175332bb35754"
        ],
        "Left": 9246.6143954822328,
        "Top": 436.76953932742896,
        "Width": 1185.4212755521876,
        "Height": 423.25505085370122,
        "FontSize": 36.0,
        "InitialTop": 489.76953932742896,
        "InitialHeight": 422.25505085370116,
        "TextblockHeight": 43.0,
        "Background": "#FFC1D676"
      },
      {
        "Id": "080a2d9db6b441d8912079159a873abc",
        "Title": "Third point for sweep",
        "Nodes": [
          "b1b9279772064c59b925e5a8378c208f",
          "fd153f00791b406ca07444d092f04963",
          "20e9ba0a469a4546a2c3b24c83868c99",
          "03684462791749f5bdb97ed06790476f",
          "6094fd4440fc4f1ca60251d0b51bb33f"
        ],
        "Left": 13160.304487957861,
        "Top": 597.31480248036928,
        "Width": 1155.14826302015,
        "Height": 418.51950329350916,
        "FontSize": 36.0,
        "InitialTop": 650.31480248036928,
        "InitialHeight": 338.15754561863332,
        "TextblockHeight": 43.0,
        "Background": "#FFC1D676"
      },
      {
        "Id": "a77f4591642344348144d6a55fe7ef84",
        "Title": "Project curves to minimum",
        "Nodes": [
          "31abc244ce5b46cf9f807c1caa2f96fe",
          "abcdb397f89644b5b2cb0ecac7b97e38",
          "dfdfbb09d2014fc1bb0491aada949d1d",
          "4c504a79de6c49c1993176d3f80d4b2d",
          "a9dbe95c53794c28a1d6e4f0a6c21953",
          "ca42e9001085497d903d970722a51b96",
          "a76d21567e6a449da254f234bf10a90f"
        ],
        "Left": 10436.177322419242,
        "Top": 3259.4231777921068,
        "Width": 1561.9637517960964,
        "Height": 514.97068407447614,
        "FontSize": 36.0,
        "InitialTop": 3312.4231777921068,
        "InitialHeight": 513.97068407447568,
        "TextblockHeight": 43.0,
        "Background": "#FFC1D676"
      },
      {
        "Id": "fdb5f3794b4045ba85b180d5fe350e38",
        "Title": "Generate absolute lowest point",
        "Nodes": [
          "bb0d967c213847128ef62e364cb4dab1",
          "b4eb8f68b7cb4b5180ec13e86e8f8f5e",
          "e3fc2bcbb356469986aede543a82e231"
        ],
        "Left": 9500.0759035176088,
        "Top": 3453.8359808056448,
        "Width": 570.6156401597782,
        "Height": 165.02195814778497,
        "FontSize": 36.0,
        "InitialTop": 3506.8359808056448,
        "InitialHeight": 164.02195814778497,
        "TextblockHeight": 43.0,
        "Background": "#FFC1D676"
      },
      {
        "Id": "91bb9a2dae6f49408e218310071c4ba8",
        "Title": "Generate topo solid",
        "Nodes": [
          "e8f7676a5ea14784941d53fa973a23db",
          "9d1a479f17ca419ca9dbc48e0199b37f",
          "dad642035b7f4353badfd16941df696a",
          "23aeab52c301450186c7c55698a43f8b",
          "302b003e892541f688617355b91dad56",
          "a981790649254e768f2db0d26ddee0ae"
        ],
        "Left": 12382.627817749393,
        "Top": 2708.3394092342282,
        "Width": 1531.1136772721784,
        "Height": 384.64128429431,
        "FontSize": 36.0,
        "InitialTop": 2761.3394092342282,
        "InitialHeight": 361.64128429431,
        "TextblockHeight": 43.0,
        "Background": "#FFC1D676"
      },
      {
        "Id": "f696c16829744cac869baf0e53f94fb6",
        "Title": "Generate topo curves",
        "Nodes": [
          "4e7028693648482191464fb00b8cc6de",
          "3938f19af90046959550cb5857331a22",
          "ee61cd7e6ef74d8395d35d1d11e47193",
          "88e2938b18db407785d9c6b970a9b108",
          "03aee568fab7431a88866382ddb701b1"
        ],
        "Left": 9713.738153412929,
        "Top": 2456.9111673107177,
        "Width": 1524.0000000000018,
        "Height": 172.0,
        "FontSize": 36.0,
        "InitialTop": 2509.9111673107177,
        "InitialHeight": 265.60442684571922,
        "TextblockHeight": 43.0,
        "Background": "#FFC1D676"
      },
      {
        "Id": "cb960acac68144e99a85cf12926f8d24",
        "Title": "Use exact boundary?",
        "Nodes": [
          "0de23e2b47dc473aa04660767a7ad38f"
        ],
        "Left": 12013.417428247312,
        "Top": -605.2681009282519,
        "Width": 442.0,
        "Height": 121.0,
        "FontSize": 36.0,
        "InitialTop": -552.2681009282519,
        "InitialHeight": 98.0,
        "TextblockHeight": 43.0,
        "Background": "#FFFF7BAC"
      },
      {
        "Id": "22d65a7a960d43dfafe402a4e4d59e06",
        "Title": "Convex hull or exact pad boundary?",
        "Nodes": [
          "1d7b82ea33a84d4a87d18bdf8d5a7eb2",
          "906e808ee4ed4580839fc54853748d15"
        ],
        "Left": 12749.588570929873,
        "Top": -780.28317973259823,
        "Width": 178.59333333333333,
        "Height": 488.60538243791592,
        "FontSize": 36.0,
        "InitialTop": -597.28317973259823,
        "InitialHeight": 417.66290415565192,
        "TextblockHeight": 173.0,
        "Background": "#FFC1D676"
      },
      {
        "Id": "d938a991c14d4e24af819f50e9a017ee",
        "Title": "Generate grading sweep",
        "Nodes": [
          "804c4bf864a64dd486c05d5f634a7e4a",
          "d530a1ac968e47099a549b6e57c21670"
        ],
        "Left": 15260.372375283134,
        "Top": -166.77581366644847,
        "Width": 610.0,
        "Height": 172.0,
        "FontSize": 36.0,
        "InitialTop": -113.77581366644847,
        "InitialHeight": 134.14368642049226,
        "TextblockHeight": 43.0,
        "Background": "#FFC1D676"
      },
      {
        "Id": "d60da1e3142b4a859078a5807fc766fd",
        "Title": "Calculate volume",
        "Nodes": [
          "7001b72a2d8640bc81cf71b931a111c4",
          "ff4ba73700f24ea28ff2c6bbf6d299b5",
          "df71f0090d484ebfbd71cc7c627487f4"
        ],
        "Left": 15584.416248046298,
        "Top": 1672.2934256915862,
        "Width": 1094.0,
        "Height": 172.0,
        "FontSize": 36.0,
        "InitialTop": 1725.2934256915862,
        "InitialHeight": 177.65517400666022,
        "TextblockHeight": 43.0,
        "Background": "#FFC1D676"
      },
      {
        "Id": "2150344d71db49118e8d5b48072e1725",
        "Title": "Grading degree",
        "Nodes": [
          "668dc78b7932417bb4872b7a7d1fff68"
        ],
        "Left": 12143.95707114065,
        "Top": 484.76354105115684,
        "Width": 319.0,
        "Height": 121.0,
        "FontSize": 36.0,
        "InitialTop": 537.76354105115684,
        "InitialHeight": 98.0,
        "TextblockHeight": 43.0,
        "Background": "#FFFF7BAC"
      },
      {
        "Id": "71473e1c58ca4e11b9a5231b23975b2f",
        "Title": "Select existing topography",
        "Nodes": [
          "3563efcde2524d3bb48edd17ffeb8343"
        ],
        "Left": 7945.2050725588451,
        "Top": 2835.7802958684783,
        "Width": 198.0,
        "Height": 259.0,
        "FontSize": 36.0,
        "InitialTop": 2975.7802958684783,
        "InitialHeight": 149.0,
        "TextblockHeight": 130.0,
        "Background": "#FFFF7BAC"
      },
      {
        "Id": "c03cf4653d524639b4fbef9db6f3c391",
        "Title": "Use level as bottom",
        "Nodes": [
          "3777f66e2b294917a661bba39b80d1c2",
          "375561998ecd496ca91dc33c39504454"
        ],
        "Left": 4637.9324320158157,
        "Top": 1275.7311481601205,
        "Width": 221.55445113042697,
        "Height": 266.19679862767862,
        "FontSize": 36.0,
        "InitialTop": 1371.7311481601205,
        "InitialHeight": 98.0,
        "TextblockHeight": 86.0,
        "Background": "#FFFF7BAC"
      },
      {
        "Id": "71eeebe66c464ca0a03fadabd79e4836",
        "Title": "Calculate optional bottom",
        "Nodes": [
          "e481edf2803b4b1382ff96446182c98f",
          "7810b937827e45779fa71445f8aae8a5"
        ],
        "Left": 5472.45296764349,
        "Top": 1728.112953723057,
        "Width": 462.19099478542284,
        "Height": 265.69675376751479,
        "FontSize": 36.0,
        "InitialTop": 1781.112953723057,
        "InitialHeight": 328.24343970332529,
        "TextblockHeight": 43.0,
        "Background": "#FFC1D676"
      },
      {
        "Id": "6cd1375054d443b9ad8cfb6ddc7e06f6",
        "Title": "Use level or pad minimum",
        "Nodes": [
          "dc17e6c480eb49b5a9ddcb13e94dd0a8"
        ],
        "Left": 7042.51726097921,
        "Top": 1347.4843303530433,
        "Width": 161.20666666666668,
        "Height": 285.0,
        "FontSize": 36.0,
        "InitialTop": 1487.4843303530433,
        "InitialHeight": 175.0,
        "TextblockHeight": 130.0,
        "Background": "#FFC1D676"
      }
    ],
    "X": -4308.4221136300939,
    "Y": 47.726683536608618,
    "Zoom": 0.366504185669734
  }
}