From a6b0536e48afd4bbe7534ab22ca3d02606dfdfa1 Mon Sep 17 00:00:00 2001 From: infeeeee Date: Sat, 6 Jul 2019 18:22:47 +0200 Subject: [PATCH] Added some new scripts --- .../1.x}/empty-dir | 0 .../2.x/CopyParameterValuesToParameter.dyn | 479 ++ CopyParameterValuesToParameter/readme.md | 0 DisallowJoinSelectedFrames/1.x/empty-dir | 0 .../2.x/DisallowJoinSelectedFrames.dyn | 256 + DisallowJoinSelectedFrames/readme.md | 0 ImportDwgBatch/Detail_empty.rfa | Bin 0 -> 299008 bytes ImportDwgBatch/ImportDwgBatch.dyn | 1338 ++++ ImportDwgBatch/obj-copy.bat | 28 + README.md | 60 +- WIP/2.x/BuildingPadGradeCalculator.dyn | 6192 +++++++++++++++++ WIP/2.x/ExobimArchiveExport.dyn | 773 +- WIP/BuildingPadFiller.dyn | 222 + WIP/LayerNamesToParameter/1.x/empty-dir | 0 .../2.x/LayerNamesToParameter.dyn | 4010 +++++++++++ WIP/LayerNamesToParameter/readme.md | 0 WIP/Layers.dyn | 298 + WIP/OffsetFloorShapeSubElements/1.x/empty-dir | 0 .../2.x/OffsetFloorShapeSubElements.dyn | 618 ++ WIP/OffsetFloorShapeSubElements/readme.md | 0 nodes/2.x/ReplaceFollowingElements.dyf | 413 ++ nodes/2.x/ReplaceFollowingSameElements.dyf | 399 ++ nodes/2.x/ReplaceFollowingSameElements.py | 44 + 23 files changed, 14360 insertions(+), 770 deletions(-) rename {nodes/2.x => CopyParameterValuesToParameter/1.x}/empty-dir (100%) create mode 100644 CopyParameterValuesToParameter/2.x/CopyParameterValuesToParameter.dyn create mode 100644 CopyParameterValuesToParameter/readme.md create mode 100644 DisallowJoinSelectedFrames/1.x/empty-dir create mode 100644 DisallowJoinSelectedFrames/2.x/DisallowJoinSelectedFrames.dyn create mode 100644 DisallowJoinSelectedFrames/readme.md create mode 100644 ImportDwgBatch/Detail_empty.rfa create mode 100644 ImportDwgBatch/ImportDwgBatch.dyn create mode 100644 ImportDwgBatch/obj-copy.bat create mode 100644 WIP/2.x/BuildingPadGradeCalculator.dyn create mode 100644 WIP/BuildingPadFiller.dyn create mode 100644 WIP/LayerNamesToParameter/1.x/empty-dir create mode 100644 WIP/LayerNamesToParameter/2.x/LayerNamesToParameter.dyn create mode 100644 WIP/LayerNamesToParameter/readme.md create mode 100644 WIP/Layers.dyn create mode 100644 WIP/OffsetFloorShapeSubElements/1.x/empty-dir create mode 100644 WIP/OffsetFloorShapeSubElements/2.x/OffsetFloorShapeSubElements.dyn create mode 100644 WIP/OffsetFloorShapeSubElements/readme.md create mode 100644 nodes/2.x/ReplaceFollowingElements.dyf create mode 100644 nodes/2.x/ReplaceFollowingSameElements.dyf create mode 100644 nodes/2.x/ReplaceFollowingSameElements.py diff --git a/nodes/2.x/empty-dir b/CopyParameterValuesToParameter/1.x/empty-dir similarity index 100% rename from nodes/2.x/empty-dir rename to CopyParameterValuesToParameter/1.x/empty-dir diff --git a/CopyParameterValuesToParameter/2.x/CopyParameterValuesToParameter.dyn b/CopyParameterValuesToParameter/2.x/CopyParameterValuesToParameter.dyn new file mode 100644 index 0000000..d7d80ae --- /dev/null +++ b/CopyParameterValuesToParameter/2.x/CopyParameterValuesToParameter.dyn @@ -0,0 +1,479 @@ +{ + "Uuid": "d4f16841-2cdc-490f-ac5f-e663ee6634e0", + "IsCustomNode": false, + "Description": null, + "Name": "CopyParameterValuesToParameter", + "ElementResolver": { + "ResolutionMap": {} + }, + "Inputs": [ + { + "Id": "a783f43b728f4705a44fd884794aff39", + "Name": "FROM parameter", + "Type": "string", + "Value": "Material", + "Description": "Creates a string." + }, + { + "Id": "5e5025a176b840129c16ccf91776bd4a", + "Name": "TO parameter", + "Type": "string", + "Value": "Equipement material", + "Description": "Creates a string." + } + ], + "Outputs": [], + "Nodes": [ + { + "ConcreteType": "Orchid.E.RevitProject.Elements.Family.Families, OrchidRE", + "SelectedIndex": 174, + "NodeType": "ExtensionNode", + "Id": "00dc16b26af849c9892fc54a65bcff64", + "Inputs": [], + "Outputs": [ + { + "Id": "5663a18d719740c3b0353fc566a1381d", + "Name": "Family", + "Description": "The selected Family", + "UsingDefaultValue": false, + "Level": 2, + "UseLevels": false, + "KeepListStructure": false + } + ], + "Replication": "Disabled", + "Description": "All families available in the document." + }, + { + "ConcreteType": "Dynamo.Graph.Nodes.ZeroTouch.DSFunction, DynamoCore", + "NodeType": "FunctionNode", + "FunctionSignature": "Revit.Elements.Family.Types", + "Id": "7970b42dcbfa4692999a0e1a62fd3de9", + "Inputs": [ + { + "Id": "72ed249a9c1541528207be702a82a6bd", + "Name": "family", + "Description": "Revit.Elements.Family", + "UsingDefaultValue": false, + "Level": 2, + "UseLevels": false, + "KeepListStructure": false + } + ], + "Outputs": [ + { + "Id": "51215da4f169422fb524d02d0caacc44", + "Name": "FamilyType[]", + "Description": "FamilyType[]", + "UsingDefaultValue": false, + "Level": 2, + "UseLevels": false, + "KeepListStructure": false + } + ], + "Replication": "Auto", + "Description": "Obtain the FamilyTypes from this Family\n\nFamily.Types: FamilyType[]" + }, + { + "ConcreteType": "DSRevitNodesUI.ElementsOfFamilyType, DSRevitNodesUI", + "NodeType": "ExtensionNode", + "Id": "4d48a99a1c7346b7bd57af913db1c229", + "Inputs": [ + { + "Id": "b8a323ea812e430b9a36b06ea9a9125f", + "Name": "Family Type", + "Description": "The Family Type.", + "UsingDefaultValue": false, + "Level": 2, + "UseLevels": false, + "KeepListStructure": false + } + ], + "Outputs": [ + { + "Id": "7698e21fb96e4791ab0f8083158d1189", + "Name": "Elements", + "Description": "The list of elements matching the query.", + "UsingDefaultValue": false, + "Level": 2, + "UseLevels": false, + "KeepListStructure": false + } + ], + "Replication": "Disabled", + "Description": "Get all elements of the specified family type from the model." + }, + { + "ConcreteType": "Dynamo.Graph.Nodes.ZeroTouch.DSFunction, DynamoCore", + "NodeType": "FunctionNode", + "FunctionSignature": "DSCore.List.Flatten@var[]..[],int", + "Id": "e5f79ad1bb464ac685874e988f2896b4", + "Inputs": [ + { + "Id": "fb167195ad3d4764b2c7ca06de074c83", + "Name": "list", + "Description": "List to flatten.\n\nvar[]..[]", + "UsingDefaultValue": false, + "Level": 2, + "UseLevels": false, + "KeepListStructure": false + }, + { + "Id": "ccc4e72032fd4512b0e8562b009825c4", + "Name": "amt", + "Description": "Layers of nesting to remove.\n\nint\nDefault value : -1", + "UsingDefaultValue": true, + "Level": 2, + "UseLevels": false, + "KeepListStructure": false + } + ], + "Outputs": [ + { + "Id": "a6bd6f01a38447da80eeeb4ad2c06c04", + "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.Element.GetParameterValueByName@string", + "Id": "25cc77ab0a6a414dafcc5e9107d05418", + "Inputs": [ + { + "Id": "b1c9e892e45b42e6856e4e319f469199", + "Name": "element", + "Description": "Revit.Elements.Element", + "UsingDefaultValue": false, + "Level": 2, + "UseLevels": false, + "KeepListStructure": false + }, + { + "Id": "888f5e067f6347e5aa41e7d890e7c624", + "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": "e75e8c04121e4ccd94c3ce45d09827f8", + "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": "CoreNodeModels.Input.StringInput, CoreNodeModels", + "NodeType": "StringInputNode", + "InputValue": "Material", + "Id": "a783f43b728f4705a44fd884794aff39", + "Inputs": [], + "Outputs": [ + { + "Id": "af71f1bd389147c3bc618bfb824628b9", + "Name": "", + "Description": "String", + "UsingDefaultValue": false, + "Level": 2, + "UseLevels": false, + "KeepListStructure": false + } + ], + "Replication": "Disabled", + "Description": "Creates a string." + }, + { + "ConcreteType": "CoreNodeModels.Input.StringInput, CoreNodeModels", + "NodeType": "StringInputNode", + "InputValue": "Equipement material", + "Id": "5e5025a176b840129c16ccf91776bd4a", + "Inputs": [], + "Outputs": [ + { + "Id": "8a375e237e1e4a66a6bcacccd46ea14d", + "Name": "", + "Description": "String", + "UsingDefaultValue": false, + "Level": 2, + "UseLevels": false, + "KeepListStructure": false + } + ], + "Replication": "Disabled", + "Description": "Creates a string." + }, + { + "ConcreteType": "Dynamo.Graph.Nodes.ZeroTouch.DSFunction, DynamoCore", + "NodeType": "FunctionNode", + "FunctionSignature": "Revit.Elements.Element.SetParameterByName@string,var", + "Id": "2d02bba5dfdd42c0bf49b54a68bcdb09", + "Inputs": [ + { + "Id": "d5e973ed4ba147b7a4907def7c6186be", + "Name": "element", + "Description": "Revit.Elements.Element", + "UsingDefaultValue": false, + "Level": 2, + "UseLevels": false, + "KeepListStructure": false + }, + { + "Id": "a4788571910b42b0b5acc28932ec7591", + "Name": "parameterName", + "Description": "The name of the parameter to set.\n\nstring", + "UsingDefaultValue": false, + "Level": 2, + "UseLevels": false, + "KeepListStructure": false + }, + { + "Id": "96fa9c0f71ac48909deeeb7bbb3085d9", + "Name": "value", + "Description": "The value.\n\nvar", + "UsingDefaultValue": false, + "Level": 2, + "UseLevels": false, + "KeepListStructure": false + } + ], + "Outputs": [ + { + "Id": "86725f9fb1024024807347eb70d97167", + "Name": "Element", + "Description": "Element", + "UsingDefaultValue": false, + "Level": 2, + "UseLevels": false, + "KeepListStructure": false + } + ], + "Replication": "Auto", + "Description": "Set one of the element's parameters.\n\nElement.SetParameterByName (parameterName: string, value: var): Element" + } + ], + "Connectors": [ + { + "Start": "5663a18d719740c3b0353fc566a1381d", + "End": "72ed249a9c1541528207be702a82a6bd", + "Id": "1e4bc76f39b94f02b20217dfaa1c2f84" + }, + { + "Start": "51215da4f169422fb524d02d0caacc44", + "End": "b8a323ea812e430b9a36b06ea9a9125f", + "Id": "072f718eff1e4427a2fbed2e0ebc963f" + }, + { + "Start": "7698e21fb96e4791ab0f8083158d1189", + "End": "fb167195ad3d4764b2c7ca06de074c83", + "Id": "76a705eb64e04057bed16aeeb375ae11" + }, + { + "Start": "a6bd6f01a38447da80eeeb4ad2c06c04", + "End": "b1c9e892e45b42e6856e4e319f469199", + "Id": "963c57015a5046bf850acbfd665d83ec" + }, + { + "Start": "a6bd6f01a38447da80eeeb4ad2c06c04", + "End": "d5e973ed4ba147b7a4907def7c6186be", + "Id": "8cd780fe50f94dff91e96bd747f05d6e" + }, + { + "Start": "e75e8c04121e4ccd94c3ce45d09827f8", + "End": "96fa9c0f71ac48909deeeb7bbb3085d9", + "Id": "efcb5632ce9241aeabbe7b02bc1a416c" + }, + { + "Start": "af71f1bd389147c3bc618bfb824628b9", + "End": "888f5e067f6347e5aa41e7d890e7c624", + "Id": "a6c9c2889bac4473b34033811e6e0491" + }, + { + "Start": "8a375e237e1e4a66a6bcacccd46ea14d", + "End": "a4788571910b42b0b5acc28932ec7591", + "Id": "079a2b30e59248bbad5614eb16d3b381" + } + ], + "Dependencies": [], + "Bindings": [], + "View": { + "Dynamo": { + "ScaleFactor": 1.0, + "HasRunWithoutCrash": true, + "IsVisibleInDynamoLibrary": true, + "Version": "2.0.2.6826", + "RunType": "Manual", + "RunPeriod": "1000" + }, + "Camera": { + "Name": "Background Preview", + "EyeX": -17.0, + "EyeY": 24.0, + "EyeZ": 50.0, + "LookX": 12.0, + "LookY": -13.0, + "LookZ": -58.0, + "UpX": 0.0, + "UpY": 1.0, + "UpZ": 0.0 + }, + "NodeViews": [ + { + "ShowGeometry": true, + "Name": "Select family", + "Id": "00dc16b26af849c9892fc54a65bcff64", + "IsSetAsInput": true, + "IsSetAsOutput": false, + "Excluded": false, + "X": 281.4145158041897, + "Y": 447.63784675136736 + }, + { + "ShowGeometry": true, + "Name": "Family.Types", + "Id": "7970b42dcbfa4692999a0e1a62fd3de9", + "IsSetAsInput": false, + "IsSetAsOutput": false, + "Excluded": false, + "X": 552.4145158041897, + "Y": 447.63784675136736 + }, + { + "ShowGeometry": true, + "Name": "All Elements of Family Type", + "Id": "4d48a99a1c7346b7bd57af913db1c229", + "IsSetAsInput": false, + "IsSetAsOutput": false, + "Excluded": false, + "X": 885.4145158041897, + "Y": 447.63784675136736 + }, + { + "ShowGeometry": true, + "Name": "List.Flatten", + "Id": "e5f79ad1bb464ac685874e988f2896b4", + "IsSetAsInput": false, + "IsSetAsOutput": false, + "Excluded": false, + "X": 1177.4145158041897, + "Y": 447.63784675136736 + }, + { + "ShowGeometry": true, + "Name": "Element.GetParameterValueByName", + "Id": "25cc77ab0a6a414dafcc5e9107d05418", + "IsSetAsInput": false, + "IsSetAsOutput": false, + "Excluded": false, + "X": 1493.29809031464, + "Y": 651.479949675299 + }, + { + "ShowGeometry": true, + "Name": "FROM parameter", + "Id": "a783f43b728f4705a44fd884794aff39", + "IsSetAsInput": true, + "IsSetAsOutput": false, + "Excluded": false, + "X": 280.90640900270591, + "Y": 604.60582812790335 + }, + { + "ShowGeometry": true, + "Name": "TO parameter", + "Id": "5e5025a176b840129c16ccf91776bd4a", + "IsSetAsInput": true, + "IsSetAsOutput": false, + "Excluded": false, + "X": 278.59525394369166, + "Y": 724.5109651631517 + }, + { + "ShowGeometry": true, + "Name": "Element.SetParameterByName", + "Id": "2d02bba5dfdd42c0bf49b54a68bcdb09", + "IsSetAsInput": false, + "IsSetAsOutput": false, + "Excluded": false, + "X": 1792.49939128177, + "Y": 889.522611843427 + } + ], + "Annotations": [ + { + "Id": "465a773da21c4522b269f1b1afb1d3d7", + "Title": "Input", + "Nodes": [ + "00dc16b26af849c9892fc54a65bcff64", + "a783f43b728f4705a44fd884794aff39", + "5e5025a176b840129c16ccf91776bd4a" + ], + "Left": 268.59525394369166, + "Top": 394.63784675136736, + "Width": 173.81926186049805, + "Height": 397.87311841178433, + "FontSize": 36.0, + "InitialTop": 447.63784675136736, + "InitialHeight": 374.87311841178428, + "TextblockHeight": 43.0, + "Background": "#FFFFB8D8" + }, + { + "Id": "1b6efb3fe7b04e6b97e1659813c59687", + "Title": "Select all elements of family", + "Nodes": [ + "7970b42dcbfa4692999a0e1a62fd3de9", + "4d48a99a1c7346b7bd57af913db1c229", + "e5f79ad1bb464ac685874e988f2896b4" + ], + "Left": 542.4145158041897, + "Top": 394.63784675136736, + "Width": 831.0, + "Height": 172.0, + "FontSize": 36.0, + "InitialTop": 447.63784675136736, + "InitialHeight": 149.0, + "TextblockHeight": 43.0, + "Background": "#FFC1D676" + }, + { + "Id": "fb9e5f3712834e48bd9a4962a525f473", + "Title": "Copy parameters", + "Nodes": [ + "25cc77ab0a6a414dafcc5e9107d05418", + "2d02bba5dfdd42c0bf49b54a68bcdb09" + ], + "Left": 1483.29809031464, + "Top": 598.479949675299, + "Width": 589.20130096713, + "Height": 436.04266216812789, + "FontSize": 36.0, + "InitialTop": 651.479949675299, + "InitialHeight": 413.04266216812857, + "TextblockHeight": 43.0, + "Background": "#FFC1D676" + } + ], + "X": -26.26884093997424, + "Y": 336.99616195116096, + "Zoom": 0.28955026871897455 + } +} \ No newline at end of file diff --git a/CopyParameterValuesToParameter/readme.md b/CopyParameterValuesToParameter/readme.md new file mode 100644 index 0000000..e69de29 diff --git a/DisallowJoinSelectedFrames/1.x/empty-dir b/DisallowJoinSelectedFrames/1.x/empty-dir new file mode 100644 index 0000000..e69de29 diff --git a/DisallowJoinSelectedFrames/2.x/DisallowJoinSelectedFrames.dyn b/DisallowJoinSelectedFrames/2.x/DisallowJoinSelectedFrames.dyn new file mode 100644 index 0000000..08a2bc2 --- /dev/null +++ b/DisallowJoinSelectedFrames/2.x/DisallowJoinSelectedFrames.dyn @@ -0,0 +1,256 @@ +{ + "Uuid": "b251e7c8-67f4-4e66-bece-ac6a92e6f595", + "IsCustomNode": false, + "Description": null, + "Name": "DisallowJoinSelectedFrames", + "ElementResolver": { + "ResolutionMap": {} + }, + "Inputs": [], + "Outputs": [], + "Nodes": [ + { + "ConcreteType": "Dynamo.Graph.Nodes.CustomNodes.Function, DynamoCore", + "FunctionSignature": "d19d4c86-0336-477c-b986-8052ebe06752", + "FunctionType": "Graph", + "NodeType": "FunctionNode", + "Id": "2d6e4f3ed11d432d8eba16b8d897b539", + "Inputs": [ + { + "Id": "e5dff2a9302a44059567ae92cef8e4eb", + "Name": "elements", + "Description": "var[]..[]", + "UsingDefaultValue": false, + "Level": 2, + "UseLevels": false, + "KeepListStructure": false + } + ], + "Outputs": [ + { + "Id": "eec92de8b3ae47bf96ca92579d34cec6", + "Name": "elements", + "Description": "return value", + "UsingDefaultValue": false, + "Level": 2, + "UseLevels": false, + "KeepListStructure": false + } + ], + "Replication": "Auto", + "Description": "Structural Framing elements are set to dissalow Join on both ends.\r\n\r\nThe code ignores anything but structural framing.\r\nInput may be a singel item or a list of items" + }, + { + "ConcreteType": "Dynamo.Nodes.DSModelElementsSelection, DSRevitNodesUI", + "NodeType": "ExtensionNode", + "InstanceId": [ + "eb20aa53-3b2e-44ff-9a46-00b1a0388304-004c0f72", + "eb20aa53-3b2e-44ff-9a46-00b1a0388304-004c0f74", + "eb20aa53-3b2e-44ff-9a46-00b1a0388304-004c0f76", + "eb20aa53-3b2e-44ff-9a46-00b1a0388304-004c0f78", + "eb20aa53-3b2e-44ff-9a46-00b1a0388304-004c0f7a", + "eb20aa53-3b2e-44ff-9a46-00b1a0388304-004c0f7c", + "eb20aa53-3b2e-44ff-9a46-00b1a0388304-004c0f7e", + "eb20aa53-3b2e-44ff-9a46-00b1a0388304-004c0f80", + "eb20aa53-3b2e-44ff-9a46-00b1a0388304-004c0f82", + "eb20aa53-3b2e-44ff-9a46-00b1a0388304-004c0f84", + "eb20aa53-3b2e-44ff-9a46-00b1a0388304-004c0f86", + "eb20aa53-3b2e-44ff-9a46-00b1a0388304-004c0f88", + "eb20aa53-3b2e-44ff-9a46-00b1a0388304-004c0f8a", + "eb20aa53-3b2e-44ff-9a46-00b1a0388304-004c0f8c", + "eb20aa53-3b2e-44ff-9a46-00b1a0388304-004c0f8e", + "eb20aa53-3b2e-44ff-9a46-00b1a0388304-004c0f90", + "eb20aa53-3b2e-44ff-9a46-00b1a0388304-004c0f92", + "eb20aa53-3b2e-44ff-9a46-00b1a0388304-004c0f94", + "eb20aa53-3b2e-44ff-9a46-00b1a0388304-004c0f96", + "eb20aa53-3b2e-44ff-9a46-00b1a0388304-004c0f98", + "eb20aa53-3b2e-44ff-9a46-00b1a0388304-004c0f9a", + "eb20aa53-3b2e-44ff-9a46-00b1a0388304-004c0f9c", + "eb20aa53-3b2e-44ff-9a46-00b1a0388304-004c0f9e", + "eb20aa53-3b2e-44ff-9a46-00b1a0388304-004c0fa0", + "eb20aa53-3b2e-44ff-9a46-00b1a0388304-004c0fa2", + "eb20aa53-3b2e-44ff-9a46-00b1a0388304-004c0fa4", + "eb20aa53-3b2e-44ff-9a46-00b1a0388304-004c0fa6", + "eb20aa53-3b2e-44ff-9a46-00b1a0388304-004c0fa8", + "eb20aa53-3b2e-44ff-9a46-00b1a0388304-004c0faa", + "eb20aa53-3b2e-44ff-9a46-00b1a0388304-004c0fac", + "eb20aa53-3b2e-44ff-9a46-00b1a0388304-004c0fae", + "eb20aa53-3b2e-44ff-9a46-00b1a0388304-004c0fb0", + "eb20aa53-3b2e-44ff-9a46-00b1a0388304-004c0fb2", + "eb20aa53-3b2e-44ff-9a46-00b1a0388304-004c0fb4", + "eb20aa53-3b2e-44ff-9a46-00b1a0388304-004c0fb6", + "eb20aa53-3b2e-44ff-9a46-00b1a0388304-004c0fb8", + "eb20aa53-3b2e-44ff-9a46-00b1a0388304-004c0fba", + "eb20aa53-3b2e-44ff-9a46-00b1a0388304-004c0fbc", + "eb20aa53-3b2e-44ff-9a46-00b1a0388304-004c0fbe", + "eb20aa53-3b2e-44ff-9a46-00b1a0388304-004c0fc0", + "eb20aa53-3b2e-44ff-9a46-00b1a0388304-004c0fc2", + "eb20aa53-3b2e-44ff-9a46-00b1a0388304-004c0fc4", + "eb20aa53-3b2e-44ff-9a46-00b1a0388304-004c0fc6", + "eb20aa53-3b2e-44ff-9a46-00b1a0388304-004c0fc8", + "eb20aa53-3b2e-44ff-9a46-00b1a0388304-004c0fca", + "eb20aa53-3b2e-44ff-9a46-00b1a0388304-004c0fcc", + "eb20aa53-3b2e-44ff-9a46-00b1a0388304-004c0fce", + "eb20aa53-3b2e-44ff-9a46-00b1a0388304-004c0fd0", + "eb20aa53-3b2e-44ff-9a46-00b1a0388304-004c0fd2", + "eb20aa53-3b2e-44ff-9a46-00b1a0388304-004c0fd4", + "eb20aa53-3b2e-44ff-9a46-00b1a0388304-004c0fd6", + "eb20aa53-3b2e-44ff-9a46-00b1a0388304-004c0fd8", + "eb20aa53-3b2e-44ff-9a46-00b1a0388304-004c0fda", + "eb20aa53-3b2e-44ff-9a46-00b1a0388304-004c0fdc", + "eb20aa53-3b2e-44ff-9a46-00b1a0388304-004c0fde", + "eb20aa53-3b2e-44ff-9a46-00b1a0388304-004c0fe0", + "eb20aa53-3b2e-44ff-9a46-00b1a0388304-004c0fe2", + "eb20aa53-3b2e-44ff-9a46-00b1a0388304-004c0fe4", + "eb20aa53-3b2e-44ff-9a46-00b1a0388304-004c0fe6", + "eb20aa53-3b2e-44ff-9a46-00b1a0388304-004c0fe8", + "eb20aa53-3b2e-44ff-9a46-00b1a0388304-004c0fea", + "eb20aa53-3b2e-44ff-9a46-00b1a0388304-004c0fec", + "eb20aa53-3b2e-44ff-9a46-00b1a0388304-004c0fee", + "eb20aa53-3b2e-44ff-9a46-00b1a0388304-004c0ff0", + "eb20aa53-3b2e-44ff-9a46-00b1a0388304-004c0ff2", + "eb20aa53-3b2e-44ff-9a46-00b1a0388304-004c0ff4", + "eb20aa53-3b2e-44ff-9a46-00b1a0388304-004c0ff6", + "eb20aa53-3b2e-44ff-9a46-00b1a0388304-004c0ff8", + "eb20aa53-3b2e-44ff-9a46-00b1a0388304-004c0ffa", + "eb20aa53-3b2e-44ff-9a46-00b1a0388304-004c0ffc", + "eb20aa53-3b2e-44ff-9a46-00b1a0388304-004c0ffe", + "eb20aa53-3b2e-44ff-9a46-00b1a0388304-004c1000", + "eb20aa53-3b2e-44ff-9a46-00b1a0388304-004c1002", + "eb20aa53-3b2e-44ff-9a46-00b1a0388304-004c1004", + "eb20aa53-3b2e-44ff-9a46-00b1a0388304-004c1006", + "eb20aa53-3b2e-44ff-9a46-00b1a0388304-004c1008", + "eb20aa53-3b2e-44ff-9a46-00b1a0388304-004c100a", + "eb20aa53-3b2e-44ff-9a46-00b1a0388304-004c100c", + "eb20aa53-3b2e-44ff-9a46-00b1a0388304-004c100e", + "eb20aa53-3b2e-44ff-9a46-00b1a0388304-004c1010", + "eb20aa53-3b2e-44ff-9a46-00b1a0388304-004c1012", + "eb20aa53-3b2e-44ff-9a46-00b1a0388304-004c1014", + "eb20aa53-3b2e-44ff-9a46-00b1a0388304-004c1016", + "eb20aa53-3b2e-44ff-9a46-00b1a0388304-004c1018", + "eb20aa53-3b2e-44ff-9a46-00b1a0388304-004c101a", + "eb20aa53-3b2e-44ff-9a46-00b1a0388304-004c101c", + "eb20aa53-3b2e-44ff-9a46-00b1a0388304-004c101e", + "eb20aa53-3b2e-44ff-9a46-00b1a0388304-004c1020", + "eb20aa53-3b2e-44ff-9a46-00b1a0388304-004c1022", + "eb20aa53-3b2e-44ff-9a46-00b1a0388304-004c1024", + "eb20aa53-3b2e-44ff-9a46-00b1a0388304-004c1026", + "eb20aa53-3b2e-44ff-9a46-00b1a0388304-004c1028", + "eb20aa53-3b2e-44ff-9a46-00b1a0388304-004c102a", + "eb20aa53-3b2e-44ff-9a46-00b1a0388304-004c102c", + "eb20aa53-3b2e-44ff-9a46-00b1a0388304-004c102e", + "eb20aa53-3b2e-44ff-9a46-00b1a0388304-004c1030", + "eb20aa53-3b2e-44ff-9a46-00b1a0388304-004c1032", + "eb20aa53-3b2e-44ff-9a46-00b1a0388304-004c1034", + "eb20aa53-3b2e-44ff-9a46-00b1a0388304-004c1036", + "eb20aa53-3b2e-44ff-9a46-00b1a0388304-004c1038", + "eb20aa53-3b2e-44ff-9a46-00b1a0388304-004c103a", + "eb20aa53-3b2e-44ff-9a46-00b1a0388304-004c103c", + "eb20aa53-3b2e-44ff-9a46-00b1a0388304-004c103e", + "eb20aa53-3b2e-44ff-9a46-00b1a0388304-004c1040", + "eb20aa53-3b2e-44ff-9a46-00b1a0388304-004c1042", + "eb20aa53-3b2e-44ff-9a46-00b1a0388304-004c1044", + "eb20aa53-3b2e-44ff-9a46-00b1a0388304-004c1046", + "eb20aa53-3b2e-44ff-9a46-00b1a0388304-004c1048", + "eb20aa53-3b2e-44ff-9a46-00b1a0388304-004c104a", + "eb20aa53-3b2e-44ff-9a46-00b1a0388304-004c104c", + "eb20aa53-3b2e-44ff-9a46-00b1a0388304-004c104e", + "eb20aa53-3b2e-44ff-9a46-00b1a0388304-004c1050", + "eb20aa53-3b2e-44ff-9a46-00b1a0388304-004c1052", + "eb20aa53-3b2e-44ff-9a46-00b1a0388304-004c1054", + "eb20aa53-3b2e-44ff-9a46-00b1a0388304-004c1056", + "eb20aa53-3b2e-44ff-9a46-00b1a0388304-004c1058", + "eb20aa53-3b2e-44ff-9a46-00b1a0388304-004c105a", + "eb20aa53-3b2e-44ff-9a46-00b1a0388304-004c105c" + ], + "Id": "6445356ba6b34f3ea94314ed8750647b", + "Inputs": [], + "Outputs": [ + { + "Id": "e8f030ac1f314800b8960e0701fcb662", + "Name": "Elements", + "Description": "The selected elements.", + "UsingDefaultValue": false, + "Level": 2, + "UseLevels": false, + "KeepListStructure": false + } + ], + "Replication": "Disabled" + } + ], + "Connectors": [ + { + "Start": "e8f030ac1f314800b8960e0701fcb662", + "End": "e5dff2a9302a44059567ae92cef8e4eb", + "Id": "9959f61a1ebf450cbe6558bcdc2255fc" + } + ], + "Dependencies": [ + "d19d4c86-0336-477c-b986-8052ebe06752" + ], + "Bindings": [], + "View": { + "Dynamo": { + "ScaleFactor": 1.0, + "HasRunWithoutCrash": true, + "IsVisibleInDynamoLibrary": true, + "Version": "2.0.2.6826", + "RunType": "Manual", + "RunPeriod": "1000" + }, + "Camera": { + "Name": "Background Preview", + "EyeX": -17.0, + "EyeY": 24.0, + "EyeZ": 50.0, + "LookX": 12.0, + "LookY": -13.0, + "LookZ": -58.0, + "UpX": 0.0, + "UpY": 1.0, + "UpZ": 0.0 + }, + "NodeViews": [ + { + "ShowGeometry": true, + "Name": "StructuralFraming.DisallowJoins", + "Id": "2d6e4f3ed11d432d8eba16b8d897b539", + "IsSetAsInput": false, + "IsSetAsOutput": false, + "Excluded": false, + "X": 738.19309824418315, + "Y": 700.15798375149006 + }, + { + "ShowGeometry": true, + "Name": "Select Model Elements", + "Id": "6445356ba6b34f3ea94314ed8750647b", + "IsSetAsInput": true, + "IsSetAsOutput": false, + "Excluded": false, + "X": 400.19309824418315, + "Y": 700.15798375149006 + } + ], + "Annotations": [ + { + "Id": "02ff86e592d045389134ecbf894974c1", + "Title": "Script Name: \n\nPackages used in this script: \nStructuralFraming.DisallowJoins version: 1.0.0\n\nTimeStamp : 2019/6/27 16:20", + "Nodes": [], + "Left": 413.39555191078927, + "Top": 565.56834513113813, + "Width": 0.0, + "Height": 0.0, + "FontSize": 36.0, + "InitialTop": 0.0, + "InitialHeight": 0.0, + "TextblockHeight": 0.0, + "Background": "#FFC1D676" + } + ], + "X": -263.5035402109358, + "Y": -208.182916942465, + "Zoom": 0.95404292488281262 + } +} \ No newline at end of file diff --git a/DisallowJoinSelectedFrames/readme.md b/DisallowJoinSelectedFrames/readme.md new file mode 100644 index 0000000..e69de29 diff --git a/ImportDwgBatch/Detail_empty.rfa b/ImportDwgBatch/Detail_empty.rfa new file mode 100644 index 0000000000000000000000000000000000000000..ce21c998585fd15edc3eef0401a26f26e84bada2 GIT binary patch literal 299008 zcmeEu1z1)~*EX#nozfkGbT-Z4m_)Z&+i~$08_;QfY1Cl0Nexs4*&tcEdYoBkN_Y9Kmh=30YIPuKnH*U z022Tf0Bis_0B!@o1%L+t9{>RWLI6YnhyjoQAO%1MfE)k?07?K<0KoRp0LME3XaUdx zxC?+D00RI<089Xw0k8mI1;7S?9RLRaP5@j0xB>70;03@3fFFPW06_pk0E7X6xz|-%4p0FWcfBVfJ^50yh-<65RPc{q*4a$KJ`#=%{v^zrBKo|hJovyR~ z(kChe;PKD&|D2}*WRQPzR%O6?gDb0T0Q;SQziSpmfm~+*|1OaM zmVbPv!0>NEmIf(76MCJ+)pYfJ%F{b?>Wjq4;fzd%%8QB0niWbiT)M+;edS5x5^$|c^%08U!8fcD?kPGgL|>yo-Ejg zZ`J!{8qAf2tq!vhVi)as2<>8~=Vj_;1Fa6`)@c z0GRGy^{frVU$gr9TJRI|zwrP2z;#LBAOw>1)jVSY%mL2V8GrE;`M=PA570pkZn^{M zZ_xkS`tzUmKREPPiNO`)?@6HE@9FQU@vqhLT{n3AYghg~(!ccoVBqgz^sm+OL;J7( z|7*{`)_8Zzcvn9KZtr5&$FtNCA)rAOk=afE)mM z015!Wdr2h#$^cXVr~*&}pbh|Rk0x-`0-y~*=Ubj0aMT9?K4BUHFalr0vEpP;%55aQ>;OGbdyi*46AYA~s0&oN14glQE@dV%nz#G6r06qYG z0r&y%2k;0$0D#8;0s(;c=1%|w0|)`|6hJ6|FaV&=2;dm`?Hu^}EB#{N7X!Z-_{G34 z27WQ{i-BJZ{9@o21HTyf#lZgq4DboM+gOvhnm9UH*xB-vF*7ick(k&T*%@2dn(>pV zD2vf^kqHVQA@G^lIy-uh0K&FT{AA|N&h|WvjBajj3~sCpc8+F@EKE%7jKa=#He}Z_ zJi`2BE{?W5PDbV?HU>`g1}@Ha#wJcy^hS0zJoW~T&IX{Y0H3pkv$ctUsEMvlx?+ID6Qe@RJ$X+gn=zl0XkLI+_}gk(fK0nDUb`0Q3v< ze3Le{0J;IB@E`hv0l4Ifo2wE)#NN@)*u}_M;2V2CGJcfNe{-m-E(0(AcFk}3fav#r z`}1D?Q4U`Ihek4jrh;uXH8F5@aWrxI-T4m_#0+dKtUXBN4IB+@On@E)c>Qi2aOqVS z{t#Ajb_6VPaWt_0os^P^5lESylDUDs35l_VlfAWphb&MVKiRh;lB=TcG&^}X0sVLV zP0sW;#r$N-ChpE;0dhw+;2kGzVDHfh*gtdxKDB}U zLl5BG8N&YRQyX}<>5p*^po|_+YJ3%I;sQv5GT;>kS8*tMz_|@j?hMq!0Muy; z6$A;ek^DUv4GBT*DkQ`TC@}{Na|AlY7U)zSKuQ)U0R#5HfR*o|DaOEyc?iEb0GJPk zuYl5EzQ~m<7~BVjnUMgS*wlJfg zP@o;K0dE4h)wKoofRy7^Z+#Eg0$F1Ew>(Q+^)ndc28P;rT#kV_ z2RPWjAir)vkAnU|0x*Bg`E{RNk2X+V7?1?}UmCFQ`Z^N8Pe5M-{S5TTAN^$voGSxz zpu}~U)U_x5bIWah^DyeGn!sKMC#LJ*Iubw!7; z0&oTD1w9nB%Nl6kwJ(9vVCW<`=&$p^AVRPVY!&mL_Q%hyG6A%KL4Vhyfdu%`M+Nx7 zM-;gJ?{CrHHL-zxrvfl!0pS2}2y*iC)c(T`kct1BdjBza&gpl(@%vfle|t1Y0KKa8 z&4<7d@qK9&x$+qoz-NB624qRhz}m^=%4e=;WpltM9Ix8`uV-lpH(<%;1KuWf2izGP zPJeWCe&F3^=Br3zGC)S)N&z1*l>T+hDan;n{!z*qaBLHx*VJ<|1tq}ze{2amkS_qV_CC;Bur^1)jli0|Ph{ZoV|tYj4ss*l>{=Qm@Ov~Q*l_}Y zO{~C_#|6~I_*(?s^~7*p{#SG;1Ct?mmm&cC#%cnb+XB>stplf=@5|e@p8vGfKWgOr zZSncO^cerP;DNR={+sgeOV^L9g@H*6oG`2b-oaLWUq1g?ZU0LCA8Y?!+YbwVzW!gg z`NwsCW;r<3gVUuF&~k9m2RZ+KGXXC9E&%t&|Adu4yO!^2*#swba5DaxS@3T1&&&S2 z@^= z%D|=k`?B}HJ1}pnsSG0B=Bkynny|oP%TiU;8@9_CJoGpMB^1 zh!Ozo1)q_wZ|KafW?&n@13p9uyf$z%t_sXRKW>1v0c{old*Iv+-j0Lb4L);8 zU44QJ^513QKeyq}EdFlckMRS};~>8vqu00F*EdnWZ$Ib(pvV7_`G3v$4-J3Tjz1ee z-}AnYxPR=g?-G9;b$=Y0-z^mQcH{Hk@%+!~{CVd1uI-1l|1&=ST3jx9KOB31y%|E>lortupS`Yk~B3i*4O_8X^0af z8pIML9fS!73uhMO9mGc>82Re4KPCi=RWY(te_Np%40WxUzIm~l-mQ3aC_{2MXgCqL zTO=G%hE755Bo+v*c!*etrifIC&k;A|_q&A7h;Js6wn{R+G_<8CqlxQ98is8rkz&t20KD%lP_>pKjJ|wK{DUF9eRZTLb6{w`>6sDrYRk*hg)fMek zl!#a+*)Lo2be1?3B0e(@8hktApQryN{t*4Zf7v4jZ0gE`8{j5DIM@xK5nwNYZ)w@+ z*$Ye97?_zLgE>F~f2lz71OLU3u%ZF5jp=w*dL0@F@&NvuADgSqLtwwv$;9}o7zzl0 z17ihk^o;E-)WQ0H`=$YY17QPfI~qHi19!<+USXqWZen3(?hJkh(*dAAL|#@L2>}mu z2qcLIqF^+gABdY^ZOsA(oxlO!{(%M%;&uzz6uX5EIWX-5bO&U%gs8Bxd&-vy=7=UC zREWk&43xv(XMQ)?Za!dAbZOCDe95lgYPDH=*>oa!3g=h=)qn+20AUa7M+cz|`3V8o z1gHSBBH;B2*Eh6|B%~pdelMU}_;~#JwaC>~Mo{LsY(`M+dB0UL0sHAE0UW0PkwCS# z=ci%cwbMjm+83#(Bm3*>Zf05QzWXz?wHL#c+r@Eh4Q&vPgKF1i82LaOkHGveiU32X zFt9ffg5`&Ou8-dxdNb zfkC7Ytj}{?u-1-|2VVJ82EWD%+AhdHso6g&FP0dZ#Yc%QMI`+;P5$LJgBScGe~*Vf z6VXQ&enHSj1#W$mRhd zAr8{JAED#oUSq#!Aknf`DIx1o7P=>d>VDYW+2s}MJCk(Wle)|8)SI+Bx;_3__=5M5 zvEE^?gK9_dEYEOsQ?=_z#Qeo9K{Wo(dTVy~s~ZMbsE_><9v$#bVBd$?7TXn(63Z2t ztb`Z7*XP(TYHrAuj{b=2m4&xI$#e5<^J-4=VEPF)bKWwN_B$m)C7kBvacIU!-8!(s z-u-9&JuhKj!oEFQeo=^x{<`z?{)aq9x-Lw-8t#`E?$sIGhVkQQXkOCJloPmy`?Yv* zo|MRUphJ~BgprmT?in(di^m8XCx4BXY_ zmf|^5L9xXkDYQIy9}(3x#7k35!_1u3R38@(7*JK4 zw#vA)t}zIu_>~UZP3^1Vdvtg_yGM{0G;OK$cIc&{t zgmG&6W^TuwNKu#-hUfk7VJgHK}1)(jU9tio$xG z7HeD@-Wb^{duyAX819QsX?-$s;^eNErj4MBYzl-HHt+soL|a!0g0OwQJ+zpR@-ZgvH`5@yjJS}?ihL- z4xZ3XIdiEN3Q;iGg^pGsKOD&timETkyfo#m7258jO!n(EY~S|muyc|##zexo?PZ3G z?O!2{XQ32g=K7p!+0dJag@p7LclP0(v^Z{Jtne>=2KQ)GIc*kP=;EPsp-^@Sl=@gB zXV#L-h3u4C`RHA@8yKgV3TNYR!jUbZ-rIC%B!4X3n0?oA(2EF06q!HvQF(+ zFjv1~XI6trNm3LqQv_95Q5Z8sZqsYlYj)FT_wsYS*+JJh-HZLR5zmnq+-Ar`MBGI3 z>bku%{aC>z1FXzshpnfD@L6`Y#-D-@FP)~3d6nT2F6b_Op=d79{EFCFj`c1#HT8pQ zGHRdKzR1sy<|iT&n9<{$+nkhaJ1BoP|9Q62*WX)yi{M__Ws^}IYwr@k;o^|v{#9PkK&qi zEw|vL_v3_3o&_ zMFaY|*5`Wi%aP-7-|F^@CC6jBOSkolsLTsaj*j|wsTXXkZb}a>ncAAG&kJEPW^0v3 zPV-@&;`pxt4QM-8H zJAdcWk%qfU6YmZ#H_rw4A~El3y+aoPfz5`_rTW(kLJMQ#kWyy0qO*WKl(w|Pfbq15 zizm0b^)Q#L_b&A>leRZqf>yZK6h2)(sShoU=9ljM*foH4YzND9S-8-Pw%>J8f?{j8 zV0`K}r3Vot)O_1T4z?$BD{RVcjKe|V>6;(J@XbA8Oy}rRlN3AXF@+ODrbQMD@_plStVI>Un?l5r)!W!_tyhu8 z-&NXlI-Bdj^I_q>AZ-U~y}mAmdcaFY1FYH%#2r?0?b~}e^S9A?-P}UkMO^rBlL}}M z4=H0O*^7$8#mltK_7FE4d%FQLAiLe>M6ZgaehBxiJD$3f zQ(yPC`KvZvbHN~5)~f0ORQq^zk;Si4C(2^86S7)zEbi-P^cGbwp5b-jHx+--ylq{L zg$8~3_<%ZL0QDYU8Kh{<*A0i#q;qsBskRNRT3K`H^Puy{yVX7k@k{(Jh@=#nqb3Hz zMY)fcVwtw1JgC`V8?dTOH@1UI!=pE;Q{nn9{TiD;E62s8LZWM@+1&_H>UWo@BvUsdFVpql*5Y+D- zsa0@R{XL@Kgl9|O%7*f$)AzM(LKCg>_D+vtf|2X~%0-7_Kzo!D(dANqJ7VcNrVP@9m&W7M!-m?(xh0n=eXIM$t%SY` zK6jKKildGp@%4Nzg1uz()_`0c_@p_|MYVfmi$bupC3)XNux6g&J^LL)WI3*2T7t*e z`!RYN6E-&xq;olii|F19uqw8wQ&h2JdHZ=8!yxA`PGiNPlr);G9EN=vb-iaOXCWZA zSTT_Lm=Z}Z0|Bz1)1C5es@WJO{#P^1$pn#gMh};u%?#`95`*%)oRW}8YRtPutuj4K zu{v5hWt7JHQ&JjL;?8=V2eipV1ce`4?)st<(kGa_j)@S^(khBucR#2tG8c=2Z8|s} z$I!fG|5&m@XgGPxCOCD1^-R@HIne3+>x0`IqKuU$4yc82(KAe5^TMd8Sq4I!U$#kL zabNHFO;YvcL|CdxGwqFI)68bSDNU7X*zuzp=7;Sf!(Axqd~W zeR%rf@u1ZLT<)!)y!UE>kja@U$ZB=lPy6$}7@%ufF@IT7B_fpiq(@s;&N&n9=l=ufjjKhMT}h zA3bDiQmq=8e@+7b9{<);Y`8$i8tVarGCPtaFO~bRsc&di8M>xzA5KFu*D2m%?`K@v zgFC+aX2ANTz&L4honR*l;?cl%ebF{Ktw~SknI;tsVoYYenIL+C)m@LOe)aS~DUFGh(DgW_>}ojdSJ4Wjd{Hmb*Y=s%2{k< z-$JGYE>hO!VYyG;J1-&qv^fZFa@|xWXZa8T*HU(LU=PSGgMoeW6U)oxHtp#** zliFlwDb4C)n1oxfCf*CufBtAOJ+H#iY3jc`RI>y7@G@zBNtA0M}zN4P|AR^ll@6`lA|ghlZMwS<*Wp6fqxv_wjM_2ewd zD}Z8YMi#|CEtj2&Ek;yQB09e{zjSY88bU|t!NL9YTjHl&)C!QFp0eInEdBUiRuSrp zbJFaNdM=V*3#DA8*+a!HB@(XPWLXE%vfO(2J@kUHFaCU}3GOtvEctMDpRv4b^-#?k zcoE-Y*r}ve%1?Zmxjmndo!*`T`=;`UqCL8o!)rF8S}ATa7`f-OwC&O&<4&baG1nvq zj5(7B{D2E03d*Jut%r;(6m7#O&zgQ(1%8f7yhAJ=@pR?z&@)b^TOp*yX}3M5f@xzI zdlJvs&=YRvR1y^=1;FKO3q%3WZBi)j*lMFiP<9C4bJyYX)5Y9pC0xd&2nci4{7C6m zwe^v5P{@a+D#&Ha>`e?81v6%iCCAMT!d6T~c%s%(Bt*;%)32ef+N2_Lv)r@D-m3*$ zuAd^IPF`Ugn(HE5W{wpOzp=~ba&8^r(Mj`YpIl;ljyVvivPtrg9|cQCJTV}7Xn{*i z;3$IyvHeDmC_=BMl)TL>E1B@HTkUXj+FDh4ZBs^{OiRPsdGC4J6QTefj1EFmAJfKA zdZiG@Rf)pIjQe*J;-bdHZWF789KPF7I_+L)$VOE*>l$6*i5*|(EFX36P8QK$JsFYK zYH?t&gUcZx(TU%xiH(KqIrgu)2$`HFUgPiEF3g-wR4*<^9Ibef>gyHM?sPNVAz}Fe zVSKT<;O)1fFxJ|>ue=~EUT|!)V7kRZjZXOXj@;E*OIgLKsju>e==fMSH-)R$velUA z6MsNTL}s`tQV%n25G)h~JB`WafR-10{I9^LYO?hxE1O)a}lfi^4Cg^iR`gV#me z`tJQSyK9XaG9RLTpQxy7sVsb--@S-qQS6|~G`~muL<8#2yZFyl$*L_s zL)r1ck-Oxe_YynBVw;P@xMoATrXiveoAxhv9`bw`vvpge?($t3`5M7w6Xu*eh0U=Jr0smy@+%}H zXq4B;eN3f-#G2S+ZiJA>UxfyJD%l)gq+#Yg?R^OAxn8}d#y>APSioImN|N%p%y`k( zn{+yHe`W4ry}!}p610kEwxTs|Q`yiDhZ^(JwX|n6&+=xGJ|!!s5HLFl2d>BR`no@9 zo;ExrbnIn=St8_?d#|-1oiC*4**LVq)w>z1bC%tJm0PjP%^ zeIS%Cuv!I86pS#@fN*jKjdnBn;*+Qw&2e8@dsv?cJUS+mD|xBwK5{W6LJ-q2e0H*W z4Ycl9*}Zk{dMkpxCb*1KEAyvclI|lZ;WGNS&(tara<4+ zkf{sA!c?FRnpAkfL=+_h%QzE|K*e46hCq&X;)w4}k&CYXo%hVci4#!cW%o~<9CpN@ zXx~sJ6?nRdIwAC9wB$Z?MoG^zr5Y1fU-h{ONDUpkF9M(YUOBG%@CvdiA@);Qk~tU{ z&K?absGv_4A%u5_R-5(US9asl>N_gEf*l`wa<@ZzA_=8TZpW~EzRjg>$E{Lv54z2u zL`gC;KIQ`sl8l-`}9e<7e$!fLn z>a7Vs985(sM(nD?2Gd$bI3}I7OdB`Vlh)oq+UzrgNi-yKV@_8k#%UQn4c9j*&5&pk z1`gG$lW)uKO(kNz#*Y?uIFsAkRpgI{%6gIGnbg$$PR>!9weIsQv?BHM5?rHX?3FB9 z!Td5-7*VsRb~$16@H(BlB}Rq4O6zc33+zh+Tj=1Yv)l`rkp-2#u!r0zm?ro-qcZSeUEvXN4xUTT_SPZS)sjpG z+!-&>Dc`t>%F@r=8~nT;rJd`+{HaU`&u*vRF!po->nw-a;* zyv0LoD^zKHw(D%N`SN13qdwBal=_(b<3gJcI`pkOoiAde_VV)I)GPF|ybz&KsyiG+ zS0MD<-Bo^_&yG7^T%Gg!jE>{rGn3le!456+&oOVzNYIAxr5(N=KAfi{Nl{x=(?-v9 z)rpO!=8wR^`|RYMYfQdZWMR!%vbI9USN-avK;)MiR^3SEd`hGn9Vj=;74jA_$Vre% zVhK|owMq`rVH-O>Q&#b6AC^GT56wN65x46}auG<+;cggfhmF)nuF#}WE2u%of3RKe zzYF8E0s&>qX+8f24{iZl|JYVuMP|9}Xtt`|6K*?@*`)hTJRYu)%c4tA-{Mn}0>Tq+ z=dmZ`VjM5i2?!=acfYa@HOKo-YTol5d~f^igX-p;O)CTjF#^lk=Y1-@{xCP**$%xB z&&z6RbN8e*vS&7R>nXvB92I1?PrW?Tj(mHZs5oR{>W@kDEa9C#x*uEjmt%ySC-p_g z9G=3GcW!l~!=`3(iQ-7qiD|m#)WIb1e?nCZ%q)cGGjKl%y6vAkB*H8HjHP_`w1jry zz52}uk!)B<5@Egk%Mz?hXpWFPm%FfD6dZh6v8~8%t`aU*G zVX;efKkuwsF6F#6*kvcOP*pc*zsC~SJstAU7w*lY(LUHbM8~kRvwKzUZ?ipb?s%o3 zZ7{dz4_HY0Y`zJnED6XF@4u+Q`yeN&x%2J>j}Vnu_{c?k-LsJQRk^Pk;ur(f*&Gfp zf9{8nt%daS!z~u}m43KzG&=lE<{at~=-4{r1Xw!xcayXNP-oho{Fc35DhZXfxyg@J<-^gN!6ycjmErF_%c>)953+$DVv)&{*C*(h|NYT#2QT#A&_LPP@!K? z5I(&s_A;a_>i+D)yc*zL)#X@62F*I#!`vGf$C|t39{tk!HHVi8d8x%J4fAspU7xWJ zqPy>QnV!Dg7sJT7sX!lB0RSmdK2!9wL; z`#VA{alx~0!!~|66-EU}Vzj^v`rGmJcXlI#(hw3@W#-`bhDrqld^W#KvCmi!z9DrzxRu(%l4Z0Z0+MQM>A7*7VzX_9xnj891 zF_P|(;TDR=lj$t8N)g+ecG}kHbdGkz9DR*X&)tsvGhOQO>RK|RBYTl}+bin#MlURP)OfeWgFlE7rt-FM88VNP&pJLPs+osr9Ab08zbJdp7G50) zhZlzaEM4VRy?$|dVz(6x``Dm z!ck~c33c+*3FzdYX9><;>vWg9^VCHQ)+6S`OHesxK6)vUik7w0&bxj&1)WHwjGOBk zxqAskop=UPaXP|FB@_aihCV`xKJ4l9rrHzlux~Z;6>o4nt}Ce62qv~`#!K4L)VsC6 z^_;aS{pjf2q_CCeM%`iUy62ln+p7BWcSSSjx=jOZ`Gct%`dZP8%W_6(p0*fU=CN5m z{=-R>H~bfRj;eyGsKh@^3B|Jy7tg^lp4<}B5o4~6Zm$X`PIut6pNqw>qSKsATS7-% zRsWiA!E)*t{#XF-MH{6adhwjy+s4ok>B@l9V?TkNPIg^v3E*WA@A5n-O9PuPO?5MI zAKvPh?lN%VaER(IVx(f2_Kiznq_VwjRF&TUAdd6;g|6oELHltV?rud7k$Kb2%1{XI z&~p1N6jJLRQT$GSxN)?k`7aI26?Bz+>mNIM)q8rF8LBGW#SHat$NRQgrqraJsH21Fxqk8e(`!L>i{Xq<@}Sv`i> z+*;>A-e%(E6Sc7AewC=m@oG+yb>pm*{cV+t0{4f?nLIDEOPFPeM-TeDlsf$&Sk*>} zrzB(y8-nCmPQTnqiu4;Mttr!K4S^v= z>_*D!##x4r27W9g9IuI3MElCNPHdR)P)N4+*1R;}9kM;HaKDQ%(J55HdK-Og82Lj} zR~6_gD#kQ!NW*Akn3kpfiFN|4gs_{ii^O_owqTdpu4I?kb8rMxR;Ada6-TdaB3 zk?B&i*=kS5WaE(`b+h%CE;g)djDBrvT`7pn8>uMmA*uL^!N-4rXW!)^;H1@BIC6;R z17Xg|`XNg}13$s}wE*m3v;bN)%p%sbr?k}=cCJ_MZny0A4dpR}XLQEAA)lryA6QDL zqa_E_D%f#oJ4fFP?Shcd$xxzPAiI-cDoU)X$p5~4slheIVe;~*5~nunE*oM^IZCc$ zw(2%Ap{~$+mgw`o39|JgAGDIs3Oz(##*bwL*z#;k0+Lsv;&h5@-hvzS9c=VgBXl=TaS z4JkaEYk;Le(D338#o(~h4h6y#+4!p>YqyXA#_FT=tOkV0CM2}>x>)$NT!$3K!HHNY zavUh(O6=yhxdcP;Vok5GI-`{bxs-}~;YobyUb5b;9zK1)b5~}Y>cvG&O)Xs2I2nT~ zo{>mwz@2C>tdx*^#vSoq{!OQPcl(OR2pTuo(@GfY>bShIDH|nLl%ByM#@t3KuYMj@ zWCoo~TO%lX?6?f&%h&Al1~TVD-WFN76^nJ#id$v7WZBfbLwuPeAVclW%7=D$v)%{2 zC|b{=1^f^_mGl^IWPC`;h{&Q`5j*VsXyUZ|LXNvgr&|KEU2HQj(ywmg*j&#xxyzAQ z=&t1@(nC&}#v`2*fiF@}#--5<FCR-j?^|774VilBWv$GjxYcvu z5qwO$Zp7zEyH3!NSL#7w|=+VRXY!{`^h`F$xj*+>8Y{W63WLfc8l3+ zE;63gZyX{~$_UT#2E5tas0#P2JfGmP>-Y%UT^Y7r@P^CsA*FXz$2(+O+@ZyZ$}AW9 zdBPhUhRUMiP}5Ckk1c#_fIWY;eR{+fsfh&wCKQbn`;;fJ>>qDnIEqK{<~crzVV`8I zY!^nvlVBy)(a%GT5FV*?dz$BDJTtFe4;MG)e=$G0qT0^GN?`azA zf_Y1eKlR&tLrrPS{qPYXD#W@GP8vig56<*qOMMq*YZ3&|ys-}Fmt$jT9yA!shw4BE zD$AEL9w{zEp${8L5tgpMg-w?Yp^n-UX^SjW;af;0);VypRJ^P(=D_7kRd4cEErqsB<+`H{LEI^eLt%toi>pGgUc zN`>^M;j6fbr?iXJ{m@%!uQnuX7B1Ksm2#RAd~d~!62I~&VZOhX?R!-8vt((Q<6g7_pWP7BJv&}~oh|nh6uuGjI^O*!OU)8}ieGP?dg!1x zR+x_rUo^Q^j%nQvZt(jqZ#^{sAF zvOb+v4EGXqHWf8`xb(=w{I$WMH-TT1gca4D(5*44q3(U7^+vw|g1S+b=BN*CHIt$( z;*B*sDd(L#887te`hdXJG18&qDfTnE1$jzzk7D!BO@U%Y;a%hWc2SJstO<%6l9w(P@xthoHt_{Fc3Wt}0BrqkB1UcX`R3JaTj=qmAY-l9uf-Zg@$I|7As zJikj4-Xo|mdqaK!L&%%bn*$&6>#{Di>0Lsll_xaOb=vgorMwRUT;ki!RARUwA|O~= zvI+5meLIY^nd{w`nyW0j$;-&4^GI{6aE}X?VV%s25Ta>V8lq`jWN9(Ezs9X?>R=-0 z<~%lk_Ut1Hi{sdn!&#LU)waZ3bE-Pb4FCMKHcFND_!EA@R|(Otr9Rr_bLc6-wy~y1 zWW(Ul8mhBDCyq@NhTfi?SVcl&mVDdaMicv@S(C9@b4%L1Y-sQ!-o~2rCjm;xI}Z)x z;7lCztx%@Zge`58P?Ke4`Fd%HS$a%a#1eYDrRaU{3ex+!CK`sy$E~xiyf(QP#t4V; zV1Xh7qmj8q<W?YPH5+a=6;=~5wJv~wNnT)~S3(Uvl zu%m7h>lEv>iDNc)?Ob<*Gn(PZSnN(dYOfcjnCdCN7m{>w_Rw{GD_)?bw{$y>=uz`- zj_D0wn?s3ah5&0mtEi9>Y0L@f2sei}L^X`F=MWSP61Y;&;A)+Xh|y52Q}t>2D19dO zs>XsgU5SMkr9YW;J2aa}CXV7035_t8G-b0en4hbCJ(Vzz-M+(T4$E`V^RO(c?)26U zbql>h6q%@uifwg~QjhcKSS*u)jhwU3b{*=yJgvJAkCGZAYPs8!scEPloUsas@_vxo z$AYC?Y? zu|cI3m+Ff_&wMGrdPu13FAQ$=BPZK(=B4X!(jl$x(Py3T4$0m{R6f(>k(VGSwVADX z=A<^c7Q?@$4euvZYIG*Ds8rNJW-LTs`sr4trNR5;a z@!mc4p?UpYv1I8zY{vVg2Qcrt&ck265>l|7C~8vHvZO5_CtIp6+P~GY!+|5UvdAfF z7S~dsJiMmq?&i`K=*2{q5;X5L_zotc6m2~V8wcN6OK>m5B!z9`*|KbM6}f5wYGkhB zlWaOfrS7Bd{f~(9Qms1)ixu*^<37m(Ymfv4_}==4ar#VIIBgt4;s>y3c0NuO;!%(o z?=#Sa{Pu&ECTMO5uvJpl?spDSu_xo8H(UGEI|;k_Eh9xmog=dsB{3n9CEfH4v71`@=bH!vs1N6YI7QVpf<2F{ksM z=Cqcc=226iGh4Z~lkGH>Fd4L@J)auJ5lnLrYRceZ4}`332$Y~Y3Cu{~khXZ+-n%RZ zJo?e%z*|}jHSCd_3#XsH@9^icYpi>8^KR?A(49d-NCBuzO-oNe(Ad`=$#ekDz(K_i<~<(24QFuy%MP7W*m`%E`9U`^AWG(638LHbVjxi zyXE+$Z+;*VwS3K#Dquo3qPUK$F<*rXLGWI?vR$RJ%btB{l)s>zfOLE4uy2G!!>?5bK&sFBz%R?r?hP!+MoNd z)tKIuX%Dy6wjCOJ^46CHf@rlOFqC9Z!{Z!YYIsB+yd(@c)VI=lK-s~>I<#J7z z#en@;`LRKFvf%2QF~O!@-<2Dg^;wWh>qD64hv}t#`FeG>lif{P8*u880Bbi3R4~jbPIp@)CQPE*K%vxSQsWD{+-$Gd|ckSIfu0 z8}o2lfKJslRliTsgSi<+Aq0vwfC3$+U4fpyEYOoF4TAk(D~{=DV}slrO!(tZcSCV& zSXDdscVSIJ@!0n%g5Li@53zPN-8WhoZ1tmYFVjm3^YOM4}NSbrm z1moF6i8excEix*;&hePmqh*|3;}>3ZW6K&eXJz19mnFYrcKex?098--6WP?ujoS0* zv^%#)bWLXE_NRdVvBQ+fe{d5~M#|VL{{SvT+WHRO0OX4Q`V6YKc~oe;Iof63P6Zm0 z9WqYm!AA81eR1NlN$D2>bTBg^f`>*~@KoFA6NbD^Ci5eTNfjH;_ks%-Dr(Xo9XI`A zh-qhqQW;?)S;~+NEhQK^&Abaoeqz)5Tntlt?Z0Nu2Rx`xnDK0rkO;I@G?&30IiHE{ABKaIDSd3f7pEckt$vCn|QUU z$4;!bK8s;HN=SVSrjC&g6@(i6>OTANo*3B{FCyNO#@No@l?5AVu+*y`*O*Ma_fG8r^ zu+&B;(kUXpKN^iVu+}Mp>MJa8LZLpG%}uBHq(B2Z8pC*jEZbo)aw&v=FhU&Tv70L}_C<@$hU^R~OHOF3OYgi6f>#=oX-gJ1)=|#vv83J7$fU$$$Ukvl zv>rXhtrr_KW6sCx?Xvy&+*MUwa!rh~NdGM66k5+<_28pah0OgN!Iw~2R2Twtaw;Fp z7)n1_*a#KflIal@P@(bhE;T>WKSC}MYD1N+J~q{;5Ag0VZbVR*8R3tXpskgEHb$aX z8V?uT`ALGGBTRm8w>|&(j^{0H(S1L!a)vrBj5Pf*sy1vaNA$2L1>BnVhSNe5v9c&P zY2sK{SYL$h=kIz9JC7pj$ULD$;ZVJe)VKU47?-OR^CT?&8KO2TcV7D&mkK_A`fP$E z@8yZ)7}&mWZ&$>3vWW!Y;ZLTV=(OL<`&QnxRV%NDeeaxdc+X~{^D_NLse12Xqa8t? zwGS`Nb9bQ-SskCw#+AA0Fkc;hk^w6e3m2a9`1h1NWm73wqC*vK)rJp?HeZXOe zfJKFOR7FDygO8mpdO#A2qMGl$xkhL!k~-rw;$at)Z z*dFz1mg({7obGvhqQ?^~_0cHISXN&?MefD7f@Mf#6P-0J3VdD{o|{ReB*Lj%XYm-; zF&wK3%RrXR-67rGu9`7f>PDJzhGs@QSL@&7# zizIeg4w5;^l3R-G47^A{&dMm16A`T2(>|+O1-=GK-OYIvO3J|edF6IX3rk23(y}Rw z@VZO^g4cw3ac=J{a@gh=?`qyL^|IR9Op^4E*|Os*I6K7qH5pmJ?^cs@=nha!N!gom+wnH5G&AbGFp{Ho z)+Qc$l>Ft)$Ja`j%*t8h=J1;Fr_?Ey)M)gAbI9`Zo3^c12AVauPe;$chO`J{b_R~d?F>RILCD!P2;#4Rh`T2=F;@w1bU z&Dg1G?oI_wI(A-)w2aGEYp7MSD+{e%7#JoEI9$-pd!#J<1}OPf)H=`iVw>NF4c{J^ zA*tI-itP~1M!EffuqZg&{;iZ(-gp(uV@WNPlh-#7#jrN(x}MDmdvZvcnh8V59AH4P z$O56*e37xpMXCxe)8plDCS!Wrt<|+wbxRlSx#2TT&P+E2GKfp>jl@877Wruuw^hL_*y}t@5){A5t>5wQ8 zM$%YpdpXln7agMy71;K)gszwLhXQ++Hq!CRvW>?y0qI$HL!k;eT7~fpgL(Mx(##t) zsw-7i%!$(EXE@phYoEYa7i2#1IqP82qnQuG#lTP7``TZg#BwawBtW=7`AH~}XbSVz zyZyO40`(2&^zsRxPWGtVG7ZYYG@-d0*;w;h!;xj1Ey-z{UJPqha40dqwTe>+>CE@?a_)u+ z#$-6XjS#%D0`1^VGlz)DO6#Dzr@O!fO5kb|chh6@;(?TO8T$aw%AEU4C`e_CJVO-G z)J-=&;|smd!;SdjB8hXfgMrubQRKZW1syutP6}DzDBgs=a`n2cf}W;li2^NrNZ^fv z#a8r!ZM|YS+AnWC#2?klq_{+q6}sERk5RUGO7=s_*yx(+7YM&Ab+i$wq`2EvFaN@8 ziGLXpt77e{_!E!cf?5VBGBr`E4q}p^s9VKkf`7*o&~Lnb12t%?Bi&3 znK!~>%CFe5n8|cDv2X;E#$CY7@A=|x7KN*i-D;j($>C@x1aGj$WFJ;Vb^ji^NyP77 z#`PNDX3h)zAG5W%=pO|~T>WYH?Gy{14!jhCN6ve4#kQb6@A-q>p zQYSBA_^&pAFU9x1$&XJD%nvRUB>k3wt>vDNWE@Xt_tmlN!^RqjM5&_9$%TXj(P5@MCLMTO| zr1$w=+^laI0O8BK#pBdYG79fr!6t>z5n;f*+kIcyJ`DyT-+a@n!-O1?vCp*3?Jvk* zN0m^hLc#NxzNQwfD!S@YMOzXCOP!l1NYM=uWqxq!&GQ+9YhbOvEn~ZLQQWnAZdnzN zD(uEeMmUMq1XA>}bHQ%NC9iFpy+M|tMJk?(2n9DIT6=6bp%L>hgi}1wk>`TQhV8>~ zYSit!gkK``cW(2+B8$gbyA7xunQ8b@igF5o8a?Jbr0T<~O(-EHvSANe_xhXpv#|PR zp_Nqf8fpxr7GUf0eQLw;<+Ct6i+UAwLK>11`Uw&jn>ZPD&NU6sZg>kOEPb7u<@+-9 zNL&S&evL+Ib(H0bSGA90d!vwr-^hlKf8z0J&oI6$9%F~5j!q=5;mupCAeL9=!d?Pe z&{uv}gwgL`R5Kp`^Y<}or8(77vD@g(ygu~J=iw)K+&+8*S&twcK?3gkkJ}1IqE@H3 zY3&d}&HZ=0b@^E;jq~A!cNpQ(hM(ubH)_6jKvLd((&q$KOf0)U7N^}62OuP$_D28% zHV;`%dfrnmH_6H{F++fvX&%nZ%-HC(`68X?VkYn!a#pG*id+ws2kX9zwNJrX&c6oO z>3L&6oP1!RQPqLgSDiy1Z_D^kS7@YVI>{qLMqPG0HG102fwAUa`yx@^HVJntr6M1C z5Dpy5=TSiYqX&BJ73VafSYdNf{-&_djs0mx9jrvb^WYxeoA$Vr;l}it5g=m!?uQVy zhznS4FE~?*WP7WOV2zu3oCK6iPu%(HGTAXIc8?kNAOl`cUXe#b!a`xieEmqx#0woL zpe7}inRMx-#rLh`Z3-yyG!g*9SL@j9wtU*G_86WDYG>qNtZNU9r&Cj{9|9!$l^TkM zZ#^)jf_pd-=m7)yO@@4fABjru1-GaW1wu1hekoOly&Ly_01#uEgd?M@0kt@GWckXA zu!2!7GEhz9m8Z9pPe{j)t9lzw6+{S+UpK4m^UaP}er#!VR&{aOXqAQy1756M4k|!E zVyf^K!%#4GT3g!?0ci7lHW#QvwJaM}*Ylv?5u5SY`>7BO`DOV?fQ*O$1RKaES47OE z%tGCq#0SHDKqnHNlGgIm&qlU&M{@>tLXrt-Nrif7-UywVeQv-a6$Ap(acE6=kSxSdey&r`h05ZhJsdV4Go?hjjwAV5(0S1MX>6SjY8k&nD&g&?@ z14-Rp8;fP4%TYB+M~nVs$EH&SeKTQ5`n6`ga>)*_eW zBz4RtVP*g01v1*!0pFLx{?yg|AeuOK0F&bXW%Q}wq#$>@7Qhhf{n~1j#azo{}$A>WZsBB;`E%1#e2U)iJf`7Jhf?WEwO(K9A38=?|DiGjwoV`?GU*ffHiy+ zB$`afXg|C(Gp~Dd1@!NF^-k7p&C?Cd*f??*0xfQda!xh2!(^DuTivUFiK?A@L|MPo zz({t>_-)566+lDbLlL3$)a97_nn;MEB(~fn)RIFB8!M|i`k`ve9F{Lcc_G<;8BxlA z%}_qy0Ld^8>!}2Kj7{msJgTwz2`cq9OmnO5AimV?nquoL2Q~H7NHa>-dmGx^d0pLU zgiF>Y%?bD=A+qpZi|YHQK5%lpZ@wH}cjLll|MPKaZAk=z^m!(y} z^o;5;C}G*G?N#%vzh!SDl?xXiC^)aEPrp-_C|2UixGS;`RT}W|7yTBGC%3Ez?c@0( zbiw^DNuf2&`;FFpJx%x&yw*(3I@%ari5KzIZN3LoHRNyhQsDpEQSU+rii$*+6^nW+ z&gI_L9!AXps;&pW(cd47{GNtWU=rzpRo_sVG36Q{a0q+9?L&ryH=Wu>-Xy1E9lur6 zZ)-XWh|3aeN#uUmq3XsIXIFv;_OBC$uC-de5p;uSR?A(=zFg7D;0P#g7sq zuh~)e<;nn0+xe408KLsSn+1tSbdQH3Rc2@4NyKuB?-nm*zX`v5D$+xp=aGd)Ozf5L0hcXcUa0!#aw zulV(_{x_9dIZN#J<|tC4bco}TImx?+HT#P$6}I|WJ^W3uhF@Nj5)K1VZ!7S=$JcxX zMOq~@%~DxD4vb~L#ZlJJ<=Kg*RYin8qhH!WE!FI^+(C^4C=##I{J7M|66L2M{3R zoa6Ri1<23nvt-r!0E{3h!`#vXO{fq!j(r@BvPmTd=?rUshKr+AkJ9k@3 znz%PYesl1GQ=wZmP3r;u*_D13H)MdZOl9|oZKWDx1x2#kZ75-7P{UIEw2j!LD*x6Z zQbI%q2V<2^mTdy6rZ1|Aj$N*Teom-FGj#mv=lL%=z7c@T4qqk1to(I;tw-LaW4Ga9 z<(`S5r{!kvS$Z1xOU?j|oCj@u%1Y*K^MuPK6UmskY+fsoH|M=@ZE{_oU;K#7P~*jW z@)nbEWCUu>ikleU5yK_$v`A8O6~n^9{d8PoPGQmF?AntXMpE~Um68ylE87L?3b7k> z$F771Oj?NMqlC^6O72Z{F+1|g?FtYd?ky7H&Z?fF1Fj#uY!0AuSbET9O*oRkuwvPz zcODko{rOyJXhw0sq=ZeP*$Po_emBCzO>Rv*L9FLP7YRH>{*l#oTDrVV9mR7@Odu+| za{gB8lzANRGuMOXBeKX+@Vh;wiVPmjod}dGqJCp$Lwo!P-Nr$5USH56bCEL(R>DQ@qzXkRA1>q5f3A4alofXC9Z z10GJb5|7B{8gqi$ z*Bm^iyY*g09Q@QW`C)|f%0${Gq&HqrdCFL?dS(ukpgAyrc%i2FkhC^u|LX^I@Wil9nE(&M zX}8I!-}yPb86N%afpK~`IfnQ=XVwc8G)AUPm{w)ls%?|`>ogA0h`^O}95J>ot&5*o z`V)cL{JIT-k^Bs&NSQ8J?`$=-H`%rSppLi1QCb8u>o0NgMk-#G7zZ{Bd-TYbltZ)sn5<=|~w{^$Ga7rb@dxbJa+kQFt#!F?tYw1Nt?q0io`|cNC z8UN&Go?Dmg>b>W_eeY~J+5gDj9I*f7wG~^tuX+2M|ICgTzwp|;)tkO|^6xG=`t-q$ zhc3MG<+q-A>cIU^_gwt#b-#IS_ebwsdHm7VCvNE9I(Rsk3U=K2Zuj-?bRPX^*Q33+ zEk1O9_tXEm?yKiz)_w8oM=p9~`J14P8{n&}0U3TEct>@0%d}+V?#etiDwBCL7nUf1z zZoTx&|J3qk`pDyV9^V=M+v^v+IQII&D-ZV_%k4S$$bBzdd*fq=ok#k=m%VS#&CcHT zKijwI#7m#Md-)%AUA_J6KVN&<*56cXk$9AmFkIqrW)v4GC$Rl2} zgV*-Rc8yzXMs`pcl7h$ZY==vR&t%UkQL>}#+Lm8Rbhe95-zqvo6=Vk4b4p4Sd6{D7 zyp*I;+4Zb^)iE`Dn$>c-COKuk*fiDbPz*EdxtH&=D)WbB5ga@^Y(y^8<9S&QoD?Y| zLd#BCHbXhnEWfUfBY~j{Q@}1C39&W`wg8XF#*G{`{HLqK^qVk%s>!s7gBlze(^Yih zpJlM1=T?{(Sj;~=ppgCK2Wco+B(jno z(XQ9)a$TDl&e>{SL{n&??a&jlz}SXUU}vjSip*$HyjyjwK$l~REJz}}t>J<#%_nSc zJfWRXXfkO>(@6`OPx^S%NqRpWb(5OUYFD$`^sH{DT5dQ)ud!T@?y+4XXgGYa8onYi zyz$-_H`_btPF7^zd*Bq=0V=qLJb-LQ%vok=45B5YVw4+jouUo@8m@`#`-u=C0cJZt zu4?HtLNCSy_*tnJ8DW#mV~Ssst0)$akdI77!|_^aL?|(8l^a9X>>NR8>^--AVTjvG!=mg}?T;sFh|cGbrKlk^U($ zt5}K%_9>~fC_|S@d^X53NF%HOrZrb9=Ur|U2aSq0bfl9l&|x05qXtdG?$3(3J_P2R z%}GEFeIPuccpbB@5E(r=Ia!s-@Vsa>F!||_y8!*(tez8T{xigkMX5A01c}*vHLC3A z7pXsN`hz|TQ|Yn(tUh5n1)~}*XSW!}fI--~P<6o_KfTDZkC%^3MG3gFiS@czV#A{rS(ziwTcC5Fe)szgtrBti$;xNOv&c`Ox2raSq}-;AEJ4VG+Z2_FlNA`Lk;Oo zf*Td*kVQf^$lkibt&^42gd>;nrnNKZTPC~MwH$7crD*b5yj6G-m+*!A9h1#s^DxLl zvTPo<%Tj9tA+~0+vW>0FjPX~c_S%_GZS?N?lPP*FXt+I$EQ4zd06H^a0o5e%c z3K|AB(;ZO^sgzE2P<_Tq2D}|GQYM)1Y9Xk4+%jOleQ4gvw|~BK@M!N}j2#Mp_vBJB zhcGcm+-kApfSc5!+XjucG=>YtUrt<^fNM-KP#F#TIR0Z5>Ra8QFYC@Y z4cCMH$$8237}K-PXtoLP(t=TU2;5s5xVhOt95U*T-~rRfHZgLL6-ub{gDA(a5z7aA z?pCBFAhh#Tc@!G~y?IIoz*WaAfesEfB4=mwm?RlS4;r{>01j+~VRhuc;(Sdhl+M(r zVED&Ubya9ZrO&k4=N5)Q#ykrPkIt8VoXIN4?M^^>7*UvZBTdRiQYzRVEe(677-D%q zIbMHuHrSD+v|VhS4Md39ift9Fz^?UKCafn6lUR>%aeFKqJe}BVQn79?c)%qqzJX2D z6^EBZQ{1FaAZ0du$-ybE=1j2#5-&G72Bu@P_o*qm#O*z7{r31(?`U{ zj_Y7-XB2rVl$Bv}z=Y2r2umv29Y(&)*lyK~txdgti7|fs$Wx@-#B9P1RUU9c!Lv9c z;QC8dhs22F#hq}yDIcNvR^GC$pq4xj;`5U0?FY`0`4Hhod*JA+O3We&g}ZKv+K3=B zZ;8fFH?HH2hGW<@-|_`bW6GRVW8NrCWx$`ps6rP2HuHGcyhw9&u*pRb!=~b&WpWsD&nK0$AXF?E5|j;4 z?jl)2k`t#0n9LuD7X?T zhN;xnCK1g@-lvf|Me@Gmno@{bxdDV!BFPS&G^Ax%3XGY9&=51NQ(K1Md|o2S6$qok8vM5nwYU7}f%PBwSMn+eB=%8k%9KE<#3yNqePh-EU1 zV}-aW%I!g)Rm9L-jnFB|Rho_MYS~eK0PyeS0AgoUuE9Y$XLAB%eA-+hE>k30z^7n= zElC_30@R`H+Q^0zC_|4OqMHLMV@{x2e{@LQ*Mk_sDCsMaz!ms3GCDwzGN)-X=(IcB zWvhgmF_a-AffxBA(soPa8Zz(@=_+pLZ5G$y^dYpoBCN>y%wMQ9o>$!GIxN;9;+w2n z2C*a0T4yuzIDFJ&iFMYZrN{x5Y(~+#y4YOUU|h}5SY9DF!&pVcMU{|WXz;#hdxOo? z!NRyL2CK<93QuT=sE+U) zM7J|7>|JLp+k=dl1~~?k&0P80CX$+JhRpL&EMp|c$GxG;2SN-*M!iW*9=d+n zF}tHpgelmuS;j1s8FRh(1#ya>U2H#?3`Lx;2)W-Sx@2pr?o;d=Tpje*+30rP=L zyIuf_NFEH)3&E{H12F<(EwVevKM)F7FiDD!xSrVsVHbj!*C>y#F0a7IiZDwo_t_BH zut)dsRpn3nBvY3}zaoE?Q`DD~el;)tPNXoKK6xR1X@UQ|A8(8s>1Fz?S4T788YVM) zjB=OZGbDMa7+A!<^*k;l=Wv+3;vDPGp0l}uP&9R z%DWz51t;Q3=hHTXCFyDazDHmc#IGsolmd$7#r&!c`Q}K7riVf&b<-!WD3?g+mblFv zlF29)+KJ!5GCUS%II`hB=7cHh$+`6U5OPH{FGbMq6wVPH)GSHYr+D%p8|5Xd0y@ zW85LGH$~|8>8gPO4Qpw~VToiO{V+0N8KTcCZwV1`jj#MYLhV3U=C*~AKeo#wB)eua zkOMEC$`hPMKh-BTaV$g~N9&B!uZ~GCB=Lxd=;Go}==E64Hu;;>l~KC#`I4|iaZtaY z1r%f8&Tb9S!=@Rioz1SA>Zcv(P_&YqAMuEqFTlIkN&e^-hXK-8uG)s;6>%W=gcuwV zQlYfR3T9$=;j0!~p7k=xgF`VEAhqxF-^!!g!xK@QP|c1=8uH3r36CNXNhgkQzz(`+!;QjcUUqMd$}j`EB3KVZg1V0TJ`G_ zsjoiZ?)%Baw)DMwTE5>hwC_WbIa?Lx_#1JA^KG0_K^Ne4?hx{n~HN>Z?cK5`0L@;SD&^N6{w!wyCLkh8&w7$$}k%BP|eo4;UHl@^>&P-P*RfP78nj3H2PydlN*&$Fht)UCL-TeO(}rI6E6=~O3V{)_b?*~qx4-Y0V!Bs!N*gE zO^onF2mcXK7;!snZhJI_K=567AC9+X0V|)g8S^$(E8uU_-zzbHN5~&ZCSYj0ClsgU zOkqemk_~*UX zFZ}AoGGH(K_k9_2cZj^(3{3Kzl3`)=BezJGqYx!94`LdtSfXbIw!yD^l|bAjrnPe! zrVJSWYKh;O2z!KtiX}xx>?D0MxhY9nmLItLwnh?O6Ox+^WbZ{PqZHPguW2Y=?dc z*RTNtr&?y7RgiS8fOm7?+Y5wmKmjM)e) zGXCE6fe^8VP#U~M)fhW@wK=*rG`r}2oZw}(p&=UjiG{LBOSA^jK@j4hi@J@KXGAod zRwEK3)Q0mX3~*gh6#b9HaV7BXOfP>+q2JRy6!Q2>{hgZQvp$uMzsukca3aqVbHiXE`T$LN~IB1Pq5i~(YqT8;T z(1n>$Ut%C@5#Sp;o?0l>^jFBxS;rSuZq>s{zCJqa=@qbiz4a|gM6(Rv=L4pghlt~e zek;kUC#+D*2g95&!RKB)ppfoWt7?wElKF#f^YprHT1F8f>-Yv+=GfpQ>L!V?NHJ6c za3Gl4_Nr*>AAILZlHwZ~K=ojDCelMCb%8F;vK3f{J?!ddncoUgX7=pem;7$XY;Awk ztBri62LDU?1`tDdJg^tfPU3mNO^xx4(|eiX6^Cm~(5N~2YODSnHfZS^!I$%C0EeUd z6qVOE88IQh541`U$3U2)39_$xy(FJclCK7d4hLcErZ8z~Ws!o973(lpm2t#l&fzx7Is9krU3~^a_G9 z|Jyy-VzF&W7u{v|VLc-DT#*IpqwPw)I|!%>@G6)WZy!W3a~C)fL{5cZ@(om(QBCNhxYF@5A7kVWyC%|>{tg$LI9 z6L~`xchzv!KYlM#dSlhv$tC~6K26JhBHBAzLF^|9eUa;vZ^D5hezfe`6D^XPxr0S# z8TIj&J<3<77L@5b(TYBa{Z(=E@KpSxd!wysqiTS2-1lkvse35KsMpYn#3=b95!O1W zK0IvgJmy84K4ASfo}5qs8uD$Y;+~)>hp2pywd|3aH{Ney&EsbFQ0E==&#ph2=)qq9 zF}wj)vD~w#oGytfAJEwkd=c`>@v}Caeoxz0VD0Hi7;i+vR0k1fHcYUg5Lpr3SUI7 zD@eLbNqoEcc}A+1t$`?SBPpZx(Rcs3+R_ocijrnOdk-eQmb^fEo8ss00nO;MC0Y4G zMiTNRnp`PE>UF~OiR?UoE-G((?N-j$t%d`?a1T@=4H>@Qfx%nYfoDck@24b^KBoQd zeCY6PH~w5NcOAe}dMua|T(dXQa;mJc==7l@i`>IVpF&HIx8%MqWdAI<|JcKRidVeo zqK!vM9^OFIo(*$&P$2WAFX_l_Cfl=uLZI@Cbnv3RBqZ^&O{A^)hE1Z)-oEa8qhoIa z#hCU2pe%d0T}uW+D)_gJ{bStIaoL(QK*E(#w-@j*K=|=+fzbM=_we-!6T=-A3d+aB z`tDrv;zE4|EG3@nX;7yczR}>Gaij~9!g^uR$v5fV`iRarvjk8oxCbnWNWY6wUlH61 z_%in>{-5_?_H7C^bTAl+zDs3bW#H|RkTV{S{p<1fLfm@u*^G|c^Lu>ti5)qp#W)oS zx6AJCf!%5N4f*@?p}QA-+>^WgWB1V0JMDEnhMP!HXqhu{g#-H!f9v1f$a`t1%|GsU zFf7R{sWF|g=A$Ql3aAfKGQl1TzDGkhi#ArI1ZV~+EL}hwj@6tj{Tn7l%zL&EEg6MB z9o?Fxls7tH@1R-%{k=Jw=B7hg2Q&&kf$4b_b6}>qZ)~>l?nAYt_tcZ#8;QSr`fV-s zJ&mdF)y;MyCTuQwD<-CX^G!5+13|+cw*m`Qw63JMqp}b@-x1wTm6hz{@3>lbjYf)T zgJ?j$%9(lpfrd*_YJs{|J&8414Oq6{xEEf_n6cvidFNl>3olyCnR5@8I)eV@y@p!n zHwV36_Y|Ob)6cl9nT-^MS$drbWCF{iLIzHFf2J=yFBAw3#`%xa{sJ44)n<2WLa%uN zF5=VF?=HK;1Zq?0%5U96Bodr(PFL1cw0)Q?92aTo=eAXAKeuE4{f7Q~!IW7rWftDh z!`)uZ2a5&15VBZe3FeZ5o?>R`M#wYbD&me{tq}d*vG>7R$Q?%ph-xUe zoXrZxVEWyAz-BibxKSVc-aQbJjmrJ~d$83YmlHtPbIF@*l0X!tdaF6OB^A9Lu*7n= zIdgPuB?L5$``5p}2j4+)_0LcUB}m6P_z(9G|AmuOD#jEFJ6+V@$dH1eC1ZyRZ>2-` zV>$G6mY${tABmRVg_}ADa>!X#W~_o*Ej49jUs43A01%6`gJTnJ4Q%Oqv-R8w-x^tj zYL2xDwtOEMpP`9+sfGw5@#^JwSMFw2XX9EgZznyZzt3piYQDbSOQ+Kfw;l6BZWkf6 z7+|E2_N0sbUI0|8zdy70UcH(3SNvo3>(RHL{&9TE^qlnWRCIT!w3&WyuAPH22X>=7 z2g(k7&;NB~m)CHs)t)aP(*N*YCq$Cd`Ee6u9ghPo%7 zsnrccyz%K{Y8MjUwA3W%qu+&kJ#IZ5<04WGqrag1e3F3$(ldz2a@zF(9Rt3pP#OM?wI>E{dB@F zIZ(RuD2cSM*ty#GUiT87;yjvWU5k^p3R);#1Hsr?8MZmk=q^BPBufk1XcyK$sKO}2 zvcB73joK#ojr)zfxHhu^wgGxBpR0GU#@U3ofW4SdIy0NDO@*ZG@mR~1 zSxM3tk++=sWYg%^0k+bTFl>Sj-`iwXF2ZAQJ1KUi)9P-T_7U{5w5(*(l?Q+-8kX$u zp)TD=TBClS(lBB$vjKHEXjs8w93PqT_*f_!4lfV8ofYI+JrR|JM-S&gC8t3cLB=`L z8lN;Zdg61Gl>2m3VdGr=cuQ}8J$Ak+QM^%O+b9^N6Iy4M!wWaFIfWx%4|5&O4e(s0;{h0(KdW zh>B5+H(5HReX#V4o=&|E?86L%MWlE?w;T0~$c09<9QzBuq4@;r=)!LJNOB$t0^z{H zrNZV%loh4u^0bb4t(j*P{_ zKxLd=?S@$(6?}+xk;Bw@c&16e5n=Q2XXNWCB5_eF2Aa20O6tNltPoE11^>3PIg6ct z`kk+T%KJh;7QkRi*V$|M)?Y9%I=C-JzsPm!X6$iWSQTeHVlMXVzK9^R4ErX6p2U%{ za232u@sbNJKfM+8#P4zWowNO?>m@93Hr!Y4mJ0KU$?wE>R8t2U?<%&ZvDZ8C*==$+ z2GMjcO^US3PJ4!K4=q?4tU8PedR`15&hy@Qu71%xLPUF}{sroNJzYYlJi$vX?Sgp_ z_JZcvE!WlUPH)(S8**`w_64Cw76GNwtI7Hm&h$Ngeit6@*sj8Fs(l($&{e=7k=^yQ zTuAyu*QuQ;?yq|VK+r(vA;qqy-LRv~g4d?OsE|oE&OQI6-6ms`cfaSo`|R@%U?D!C zYW;z<6SPVFsob1-5E7j=z6IXWuxibE-^j8z@csUjdMzNt+J~~|lOOS=HZPv|0^JDE zzUxLi)l0TS&wa|DI&2i&e6J7N&@i3HKm$$!L429bmHceIU%c4NjbCcEv26H&9&b;| z@+F!015p1S81ne>9}~lo2J5*`$VjfmyC-axw9AjRtUT`HvK4v4Rk%LvCBA(s3&e4VBR{ED|yU$@8{d#v`C4G{bzg^+F58 zVBRAY)mvl<3^33J)^)My0!BuPzSthkU%)KT+jOO$48T!V@$<--XJsQF_S}Ef{r0@c z^^PL_uD7Q>X7YtxJ8jdzXq!PjLQ`(fj;boEhrkT0AnOefh2cp`dN%#EjK)k+=p0*7 z!;tWduVh#XHXw(rFg;@?ft}3RjhcsSOp^u82Tfo#9kf-kQ8kTqBTcq;K--*DAw%3j z10opn68Vpt5>G}YVC9m*MRqhp>0{Hs8Zq7V)4Um%4E{s5PXyb)BwBA6R0cJI-%JCLp1+1HfIU7C% z4(3zMSyQr?3>NehdhIoS9%lugj|aOKP94Z;E;j6Znp7!qwqaLOiBY*L=p?D=rm2Bt zNbtIuqM$FIwhIKGzs3Z<0bMw>uu5X+qV8D_j}v|eLg*BnYE5q6pmdb>C^t9oy%*Rj z=`TlB2&UI1eL4!lf~lo@?TMC<0ZGRZib-e3Ky}hFiEaV$aZq?nx*vxaEk+{0(7d%* zcnk3`;C;Z2bTZ7=9d*PBubPS-NcXzAxHF_q15v`KKA_K z^B;Zr`%m28efm5cElvBdICJMq@8c2V0WMcy4YfO(#G(Cp}5e74@9#q z`jYJ}Vnu-W6=C*?3bSV`6#K=A&-#h#Ept;3i=_{K&llf#{BsU{ZSUWleem)JzxK)h z^$Vvz@Pg?anbhErvXtCLp7e5R+U))GZeZWjzAg3_K7bxk>hIVEYGNdRvma;oI_vOl zW`CT3Ub|}*#G`0F@?Y&jqK^iaR?}$Y5NooU{YM{b)qG`XH3Y(pGO;1}`ZISiWEA}Q zsaUlk>2GB1A}Myv4YA@LS`!U0$3R}nUs3-)aG2CqT z-62-`%w0k5H3kWGwZSX(U++d{?YL4+k-X5MV4q9%*}I^F8d*z29bpKt7$5@eS?jZb zch2>+=hpmlcHxRQ3HKr}Sym;K95P8Ae;{Dcd>rdYf2ZSy(ewH9c9HvO$QcoFDiVrK z1;_kcttRgj7yiagLGn)*2NC%1+{)6@?GVxbm`RSX^e7+;n+wd+6~;<;5SsKdn6WLq z_>5oXu@;xSA zflV750adg&KGt~r2{O5(LClDB4guFFjou%UbkL2^<=C70qBvF_K@Gr8)AH~3HwhEO zjtEe1qr@B+gSaU-q(3_*8?AZTxuM74BbRu67iI;UKu|3d!NBzH!l=;iL%>!QvQq#? zYyA!7YKL)o9YgyH-juiDpEpo_$+3kl;f7VixD85P$jXjHVPpG2!d8UC3pdu7C*chi zjLaaYSfzh;BwqqrEwTGlfvbe;#X@B z%x(@hRTu+8$82p!6QCBBuC@HQd4v?i(H+?poHv*S4ZkSlu2>*Y9>=9yMNSSraQEd@ zAA%XG{UmG7yXzv)4Zv4rKM44h4yRzR0FK3zJv zdEa70bHEm94gz;d_7otvvk2oh5>)&LSxtt>ujY8x4GCGmZ|al1Q~#Z7Xg#u&^N4|t zfD1$Cov9NNMEQrmhGGC4{q8YY@joF#0`;PCODL`XQ)uc4;^YBh^cUcXhkwD~U)_bX zf`85E%86a4$l=H2%xxRcTuRxgrMzKMTD%}eKCslo7tzBf!HQGojCovEdHRr>)T zLedfR5cuEM|I%;$+L^EUz{0)3!iWFzH~i!sIh3^ZFf7t*m#rTWC0(f}y<}-IOfuxL z!7p8G5bJwjQ%OE0`%tYg=DU{#8}@W_{uRwX5#{&0mnAS}J?n~O@pK|GYB-(!Ay8!W zg|2TOLd(fa-uc0geed%JU%2^q{?RY|gFpC(FZ}^gjkImx1$_;#LHP@}&mQ)lr}5i` zG=Xq>L@K#+oghUIZzGJ@C%+s$_POJ2@(%Fm_A&^ai{YiV)?NHuB66b`9>HbY-lc0R zO;&Ey;?jjBX5(3q)(&gD)$;2B3rLouDrJ?U$KdLf5jDcKs31<4}9I1{8s;k@WKX~!{&1$}Faa4iA# zyC6xLL{G!$oqZ6kaqW4rwu=^OqYH$UA84unG}Hdz=p);O7N?i&fUhV&1M9?srtPF4 z3DynBR)b!)mnW)3Nefqe)%!fsw%Ew?JDSE(gWa?%$>@#Y^$mxQB5;@xM+u*IeIyg_ z_Xa<4SOqeN2yV6Yqg1yu4%<=m-O;u;8W3Tj?C4B=fuKN!)R~zlaz_)Mo29$hhnakf z!dq$RYoA1|R{6lEu;et-P7!h3OV^Xm4i+UZUKx1PtwNDGu^ea;O7(}4%bTzZg&aKU zQwf1=g7yxd;O?BuP^TJxXu6_B8|Tt;TuKPAR%A$?n%l#rPUjH5GE5`KphH2|rt_Zn z$U5dz=c}ZbbtL_SPbX&+w>Kn<4IQ&;18qu55xY!sdcT|BEvL$*v;aXvsls=tZK|JF zVTdG1b(E+ihOj|wS465B9<)L`QMw~cR#025bz(WvWT0kajHS+Q?QH5eFFlAQY&xy= zS+mw+rAT+CJQmzo&l@pf&@2A@V#DVe3n_eWN>hF4Vtn4b91;F-?49Au)oYocT7p5q z?o&zuB@{`qV>Q8auXo&4=$LzeQ@stF$!htmYy(bd3426slj;4IYhPm(jYl00UB6O% zLc*)!sH>>}gpM#wHOItq?Sn>aNlH)H(kSbUF>X+l+EqfN5|GFO#idprtTm062}Ab> zW22P!h%A_)`0DMY+u%f#^-}+(F@WaFquOLG<8T)))IC1ZQ{50} zlvHZvun$0d8;Lu?vRPsX8(LKeU-42GR3i<88R47^+*6V4Tu(}QEo+9Pk4qIvgvfT% zyv$vSFS)Y|NA#6+2PnZV#34h7QOr|dUyh9%7jx%F1tS1^zYK;0!%innyDI1mm+_SE zgCzRTeQLFvUiuzXEYT?6jL1LU!=U2Zk7Vlzs-7hOo`;8VW{ zj^!_UgzuiD)M!>oQ~ z?AwU_OU7t7aF?JvtNDtC*A4*VkLjS00|{lWxn9Pq1VUXsS=RXIU5{S#GeJZ1-5_SE zL28#vAMRg1X9fk7et4zk9f+AnxLYbO)+-9FM_6{p#vt%f4FuG&SUmB_?98pqF8;T8 z^Fj{%^?tlBXeDOT!D9P;^*yB2N?IdK?N$r|DA8}68p`@vxq*#G``>N5s)9unZO32P zWjJ=5SnrOJH6v<_w-cTus3OIqh2ehy#p$>D+3Q20szUqZH?>G=A;!~=1m8(R=oUzv z33RbXeEO|HD9nSjrEDwr&M3@NgLQ_MJ*J87My`1dL3-HWabNk3bgi0OyscJTkciev zoT`0x{066;@M*;VbMk~wUM#AO+{b-B8K!HT=yN(o08Y%8l64kozI*TN_Z)7Ca45|7 zNYrNN%V_Io;$pY?gwJ=cyN}V@*)km)38X-lGIoSrzBzDbL)k3A^;rc^DKNNPu?}YA zxOX7D5E;)s>8~Sx?X%7uiO43#bMEqUJ2fqcO+Fo`(gGTzH_n4Zkni-@G0xi_`RMwo zeLRbO1m%nJ?qPIEwvPr@ol8azmM44_eAR!z8_&~Yw@Fv{H|&DvLh}`V(~;Ry%g5z} z^o>Z)#h=GCYMYG_<@aVxy_32Ns@F9kLNEftt^WHkjG(T&_@6`rhr0n)!*4f{|J2US zNCMw3u>$?OkfVCqr~CWnbZa{4l8goh;~65EQ5Iq)#k%4S3FZ-e6sFyEpT~DN)-U!h zBT(Mlt_giBH_P>~o=K=@7J$5qnW0uAYgSjQ$u@#7yiZa1PPrN(d?$A9(H&zGwRD{W zUD0m>YN4|dRB^DeQ#4B%7T*gv0cQ<&c)pzHYeCJbyIn7A4@zZc||udaKnxO(3~nC)N**v z(ePHFy0H#51EJfq@77t4PKkn_C#*=5JKUOH(NYE2zT2HG=`X8BpMEE`=VHIB)E6t8qp_*o zdJeN-Qt5ZdRoTDuA*ALRJe{J)mY1SUf-bBKV$*6VrWfzeq2A?!H{+;(ekzyz^iY`d z_n;j}ORA!?*1v=Df$lJ?mWTcC*o7TOsqWA3L^_Eba=>(J*#FR&3|%C!oxo|HLvp%L zg5*{!7Id{;BX;|T^lX=H`ptXK+9*=Ct=7ooqpsV9$f4-n(9M+;g(BP#L6Tq3^E*o# zK5`1e%o>>7S~g;csVWGGTb$1Sc^8^NdYS?S#KH)8KixmR3!geu4!sLwaT`Cj-@OOF zWUHvak}n?}aV&mszh@V&r-mBhPP^@_($uWUNHvI2>i+$`yKq=c)fi;d$T>I^A0qnW z_I!*huTa#>L@`?HmJ~HWAQdB!X`$xaqrIfdz&ZiYGC@u(jaz^aNr09C)+1JwfIH_l zz+rS!BORlSxW(yu1nGp7Dat-C`8drIqO`5%ar8T_rT1X`C$*H3WkiL}U?DR7ry7R88V*(P9L1Pjr8LhHlqsi32l3XC+fJCXqReDVOjeI_0|pHi=n( zm=8-Rz}MaLV;34SHQJmj@(*KL8g1Wa8b8>l;rkDv_`JD__U}%Li%brepe~U1A7?%B_02GHf#-#w+O#-hpR$ z@HxA>vc6oTjjSaVIz-7a`mU`Tb)^A)m>La@JPMRRr3D}isG{)Vh&*so91e`jNnjW> zXWT=*!j{p+Q~g&<`v_XG+mbCwv-#es~*~!#&vBu9e7Xv z$)IVGj$@Y4_3*e)^@VZ&F{HFisuGlZujSQLXyqFpT|B0~j5jHXQr1xZ8F4g*Ut>h^ zorufs>a7Ytw$hf_xSOT}aDP&)3AdTMvKz6z08Bm^IKq8fJ=VoGXIqc`6aIdCPc3k@ z*_@$Lm_0nD;c~tYtDQ4%f+C+Y(r@LO^q2iz%Q?rVtusBwI0V>(S>33vF$F31n@}@ z>daB=<{ho&ie$J!e>$FtdQ@R7yKkoCXLbczUp`fWh3(bBco%%F2U(eSQHS_Z_Sr00>2GYMUy& zncE$=@Twr!A9s}iLff#)(V>M}K!YeY1E${@-$&ZBOo{)(F2E(A}Rj-1l8Kg5F6MBrS4APFlXu56FT3m$wug7Ap7 z52dy=h&8u7jtnC&rwZdi!$kZliZJHtnXxJmMHBGFGp0XoVY|gnq(~Lq9dW|ba1QOR zzhJolfQn$WLF+3jL_%k$)3bpA9b2C!n+gF?DhGYcj}v4JOQUG|jl6iHAydThH*@;* zwgg^gK#)NWZpvG8s(^h$4#O6Du(s4`fC&Qca|;7|Dykpeez(TpmWEBi2nYzFNC9#C z>b7GQfDYE7Ds#y=1}Q>*j`^V>EnikS(78M`{iX*31(-avz;=7&@)(;|0tMF%b7->9 z;bdRM7cd3y`ZTy$bPekP@gN|IRYP2$sstf_3ZQ64$PdnAQPjZ61df(8xRMK*`qT;- zJioFTaV6yT_|JD?58|KyVi&eF`&6oXAFb%szMH6=Y{x%_*Oa8hW|bXus4HubS0b0@ z1C1u-;1nsn4~5R5Q}TZNc;Lr^@@j*W8&efd1N3<@^jBlG#)6*jSDvKTSd z$FUT1&&m3)qo^Iovw>?SMf>DSINpE3|Lb3I< z59_b42JT}8d!+t-vlw^rhbrgzX6`w-RsmP*ZSRhlPQu^J{}CwKJUGB6@MJ0Zvyp*m z==yyBrCE4D?S53d^~CY&NiURlNXQ9}BNW-@1Y5%!nt1$AhN-cI!WtaO<(7FaX%|@s zMa?55qgbxua_l6ey7_}GA3hSQTOuXRs^juEQ>%!8OdzbFA${!{6%pLLySy^MDnkGD zq>Wazfdx|JqvRnd*mnR?q2Q5FlA)cguZl(WZy~jAE7$vk<__HTIT#dZIpkU$H`QZp zMsMzJQAeB?JBtJQ>gqN^0lAU>Hd2ZDcQD0%CRraD)L{fMU?2n1HeU$Bt!`Mz$X{v+2|&AejgY|+)jI<;C>ZR&LygE>oE6h4Yt{k1*{4N< zhtpXLr4F4TS~l6!VZ@Rwp(`zoh!@qiBTr$lv+1DP0Adf{13EaH132n{vt4Ou62TeQ zbspTVwrwOlKW%OY=D9oQ{h48gCeKO z=l{_zkc7kt?}OWK)pifgICuM0OZ;N|8(6-Itht5*Fb;bmSK?vV+!LzTW&Fxaa4Ln0 z0Poi5RVsn3ggl+fiw)h9hiU9Se7gd8t&thzUx^^A+1}EK2|}CRW7JAYRu#(mJmz%s@9=?y({TNl!J$T8wSyfTv<_QS%#U}5@-t7{RwF{ety z-apyYZFOIk?z1ZqnV3#PVZpj13~@UaFz*8SBTJo+-j8Ih9?opO>n0V!YXDblAIN4f z-edQX5eh!lRkL>~Ujetu5GG2%geymoC2;C|^tI!-7r`HE-Vx1e#d$EQ*xyz7{^&8W z7JDAU+)o&Iw{?d-vNRDICMd9xI)cS2B5f|P52d|@!9@(lHg6t|qpj&-)+6N2?uq;O z?4+dKbL2k6A-*vt*H;5LQ>&!|X4Xclvnn^ySXU8B660_aPDPYQzl*kqSA~KjHOa~Q zK!ijcj>??651Wx6|0r(~2OK4;?xjiL>w|R;K<_2nL@sAWxKMSiQv0KRC+zr0(i*Z< zlfJ-8Rw>^VLdzV-LKS!#g!^0Ujn>e;>D+zTXgnDn6%810Ps}I-&yov+>5M5+cu|J+ zgO;K9(ydTZNWZgTC(%|N&VS4tI7Vg@&(~Rg)lRnnvFBPZc_S5RFe0YOAZd5?+k%|r z`sPXhP{B80353bk%-fynwjVH+}5Zg8}@X?C3hyM76`C6|;>ykfW4R#VZfsHnWO z{n#AsnD1*|SWn`E)Z!uk&n=yoV=W8)G}70y$?|&Ae`(r-Os>1Gxw>}r{ z=8-zhXAgwL#WOgw=X5-|XE)tn-1JAp42QE;^Q-1Wy(K1h$S$sSD)*^mf7&oW?r?+c zKTMsOwD9N32o`aJ@__bUhf0J}T7V#=%@kZHPuuz!NEraiebsXE#I^%VMBWW0>hNx> z8V-;;mQkTHW_vCGg?o+eU5>d4uhLsu`h7T>fo(b&&c28w zuKQ{w1EU@!KQ7;gHv(!xVr1+Iz8~mp51L|&vjtLw$;k>cbc$OnW{s6PTL7tv81tB9 zJ|5z=GSj>wZ__cGdX=6ihR(R2Gp?)hWvQymR4S2m6+h?{r_k1$3D})+&O>`$GHGw= z(}MVdaiFoxYSdJr(4Nas?sy|DOE7C%kq!AgWuw}VXqu}X0FEiLjvseOEw;?RRl3-- zYil1dp~2~eFTzYYtZYV_^g2TfTnq3$zz-djkJh~t34HR!|KsxQkA0{&{dZsaxxe`8 z=gmC?5b=21@qibLX)(c(_>#v%D%H(U{H+^;#(xfN6Xv^9f)_H%2l!KJ^{u4ERz{#I zK~LU+yI+!sS8T>Uto78B{v!Z?eL**tmqN)>>x|}xpfutw$)Ulj!k@L36yyMm@^ebE zVVQ!Q6G4s-dBCP@yd=3vU`C&S67zaV(oR(W$T#5uOs$;E(~^`E!sK!mAlpxeAn0N@7EK z(d~aO3IX{O6>hPCP`H@gdGLO+mold>4y!PoC6n{G8*XH!mGppAU>XKvbSmL_;VT8N zQ0OP0mrzJ{QVVuj2(_2c`suhhbXApJ)AwPjZ-e09&9+gF1w9N&%0SG<7U`}HBN6+2 zKE;Qj@m@ZxX72+91;P^W;yBJTI7-UO;iDSEWq|E8yA7hRtI?n{q|0_z8k<#?3KjYL zBzzN-v27buo^BBiojc#3P0MV(Pu|&qp?e^unDA9o^pbGXZ{c7O16qZ^ZTH^w+$}}2 zFVYicNDaG|Aj};;ZWgL!zNA_659L_PKa}AFO?enT*5t#7HLI8! z2GPRLiZme~wm_C5rc?|xfVK)I>LtH2J85W?AP6{Wf6s&s=mJ-E`kjp;@4KTh)(W-u zQ1&YB5mMT#b&0aqfeHcbB%)Sb?RkV@P=fGIEuBwk;#Fg4;g<(%U4|L0D`|Md?k!8; zY?_PA+80FU6!yNNo?p8UYaYcRBLjn1BTaWN3RdP4ucI6-`dSq&Gzo~$7pR4rHNI^h z70SqD5$?|)q&DOH>E=~{KQm4d!?N%Z`BcSJVB|jZEHm~Fr_9>NNGI}UtYO?EH@S-D zc~0i^n!DgPvJRe&P$K+^>{qh~`Qmy)8ghMpHIjhsbBOetbQSfhnPIgu zYY=fAY032H2O;nwBPyfVJD$q%U070oyR=Gz8QG4J?k0DPfN3jKH?icGAY$r@5BOI-vK(Q~=98>yTd2y#qA5q%v zF^IKIVyscIJ!Z0^!vboUt~*u+uYk?+lg8L4CerUsVr|2$!fTq&2F%s#^{ zZYJBvH7nUrZe(l5zsa%b5bjP5B~WE3v@F%>NVzBc2WRL53`2vCSA?-T#H*2I=O6g%4}g{XBw zSCOBwjjY#oq!hSjTQmyp0~0SuY`vo0k^?y6Nu}g&2!Y@H*wH$o8-%W-+nb;>1tJZP z@f$4X$qM6cd8lQL8A)>;Xv)A6k&WsZ%pV+nz^sh0vmoPX-lPgX_^zzln8|w>mZlCLbigun9UEK(R&&YV< z?`#%q7?>4ho+AS8O|JTU*d=#Rwc9I_?&ZVwuPds3AlvZEp^GRbUI{}R5k{-E^?96{ zgG=t-efSe&$-tj2Pt>!a4LwC5l12~m4TXIl1b#sEm4ctl~KSlQBR7sZRHjmuT=c$0D?`W?PjeHyp1g zL*(>OPgZLc3niB@TK%}41IiY-W#)CdkmjK?Piq=$38pF$T{p;Tsp>kKKBd3mc5D;M ze*AvaH=*d0!IsfVHr)AmBnhl29)ZE(r3_L}q*y z5@}RhkgHcK>re6y?Ut{;k0_k@g?n>`F#~c$igWP0mOtJc_c`RoyRNkm9Vha^h95^4 zAyL~5jRuJ3cgjU}*ReJLO@)5GR$Z(df3n-3*{&tY zmxA9|ri;aDJ_v{&6z}MROW_hT1sZCCLlu}fcdhh|u>NTt=uAG?c^AyJD4OT`o#k}> z{YV6k$Xrf4tv!C{xN7&_WnDzc2;9~6kx4D4ArnqP5cyw{R-JN zQdo9sX)5rtzp77~-lMrLDu29PYnVAJVUIbV^pxnC>(z7O%z9`d@Fn$i;Po|OFMH&~ z{P)(X7Jjl%8m4)|xTeunoV|3L@q}aWQ;YOVzYEb9duRd9 zM@1D?@vq;9iokyrh6*rifFfi-7ey?>;03+A$xg{S=Vn3f$(DyZTTTaHzF%DO@U~C$ z;&Or2)b+}h&|qUQz;C|Ku=`n$v=*gG=L0uiH{suMA66BpFtQX-_zLgxqk*&XtASUm z@gHjT18N{g1J@wES`t=rvq2Sx#bS0C{`b$n>pNRhfBx&Pf6K)2xBadE>l;6B!tY}U z0M4-4F71Q&*+=$TkVOx*t^z^PKpCbW|A+fPX&MTWzklm<1TZ?1UfebG;^Al^CGa7_ zc&+quaE%u9&u>MlO4fJAL-ZNZmvB5j>rim^`@>BiO4Y0MfroAdDV~J)LQ}?ki;5W`~t*tngu_Fr6522oknjyDr$&U3c z5!LNA_VR>DTWkjFScOz185Z#OWY`UKBE_Ek&0xTk9*aPG;DXDa;BFi-W(hGr2uq94 z>gD4AM0Is^`~}=Bm;6CE zsylVHSR;WcOVJCn$b7$H{;t1jB9u)dN2K{96U08a`G<25&(<;1pvsFGld8PBIjDA^ z+d8;so5#iEoa^a#AtOHLo?z%YB)UA84&3Z_qePM3J5)v3A8ZGeSG4C8kFeF!J4D#v zhCakjbB!I1;(T)m0D@sxP1Xw|KHhuH8+HkNg$PPXPlFHXC`*?el1}HEG{7@?k$xZQ z(OAz6oGB!#GKbwOTJVH2Tg@Hr$LmXIF8is`-_ z*Mym5U}2J;;SHG-B}K5AQ^~L;w9ht`n-QV1$D?w!D}R*}5sP9h_g~ewxO;SEBV`zG zKo%I4#l$~7i(70+dV|J=H$8Q~^laDyPY;!m_kear2`n{wzKVA22XN`wdtkmhg)ReJ zpxF#=HN)2o9Chj6FqT9@VfW8j;!M*05@d4*(K@Th>};`Ht}GX7x`e6 zCA%N54BO3?Wbxsl-wPwURPJfWe#U&o?LyB!;Bik0Xs#oomNVnc-^ z?!C}uCAwCCL3tU&2f=1oXceHZ_}Y#fy^;Y!_pmb+1?_}X7h zg2IsY7}Dg2@Ff!0{5i_l8=3{&gV=>-Hs4G#w&8|ggzkaZVF#=qMho1=te3GHP`$V^ zsbP(-waCgpUdI4|U9GtdL4)7_&L98EuloMs_3x{`?r%T;TR-w|dFR4d_V%4Q-wHj5 zw8uY6+;5zmMhXf0d!nT-MX?*sWXrn;StlIX8IN$n30!TKFckNHQ64x){p@*P6A2^p z$M!Ypg3nlNjQsI9pq#gz3w?c}O)zdt2B5-q_nIF!S_J>i9!@;&lb>>1_LE1b?!t!m zt+M+`GlHjlPpSmeV0$~-O~$3^@e6-Ppil}g%fA?tzA#*C5KnPGSeBIXhDl*d_N2Gw zLFDOo8k$AQ53TP4cVYvC5*Ujy+BF?d5>iJ-;vQ}-BwHPe)(48N8|@emJ`V@tiFBzci&d4KjkoWPNm(ok~Wd*tWP*n_`n zMQj_%u>yb*I$>by1CibxDR97B{5;FdASxWMHqU?teAVwBlc_X%Q$Mjfw2Rs&-cn$gMZ&Q<45}|n>-naZB~UzaLt~Vu zli|mTTnQZ|lFTtngZb_i$H%i**>r|rm5gh|yvs6x4ksLP7EuC4r^(gJJc*ha=mOPJ z`)(bVHW4T@V3seKzKU2WIB-Y&5)at#I`C5(pxbrmi&llM+tD+?a@($N7gpBtj2Ycr z!5&!#J9FJ57AuT?C(Jl-8fr%Ukgqmj&&K6rKjB|FAm20KCqbHyoII@LD(K=15V!rx z0WpncC%Eoxei!KPG}&Y;*vO40tm*nz()pDGg0II@IM>VXs+(8$MqZXPdFtqj4v2Bp z_fI_7E#DFLpWVScWSg1V6-}YvnYeFD8L-m7f+EJl_1-a^Je$G_sh+>PkFK(x{>mrZ zS95OZEk4eL*^VA@I62%iJ1l^~C0Jo|Dl3hEalRG(eH;Gfvp_Qe3G7EvIO>&mc;o2< z@WWyY4J=g}l6A>+NRPk?IRa#Uq8V`c{OZ~EU;HP3`&(c6_HX^**Ytn>UwzJ{_JiO2 zrjP#2+?RDHfAtH0Zu-N)K7vo%F3N?$b*my;)<uC_W~PSdNBJ(16#nwRE1KIytI*&#Hx_HdTmhxU&>d_6a9?>uP1`yRESO`B? zyduiw*A_z8pbgTCpl=H~FXBEI>0Hwy!A1OQ2hQ>?WfSJvVW*Po?zrB5I$>PS@q#7r zTP8^^Z3ABdt@*jnx zVsPhjVHg1UgKNcjyxht1XX>b~7A%yp&ZX5g3(MGKI1aZex*QjpmV@4&UqkiG*+*O} z7o$9~QnDrD>qb)N4mr)59?y74L zF`(H0JvQpVB3S?{Qu3u^uO0}LtFWkx|zd78#7DFNFf&~AwG?g=fLCYe2NN=(U2 zJW3^c??E`wWC!A@4s9sKH@D1A^wh|nQ;VGi+n{O`MhO$*9F)j0YYLYe{>Du)HEB~Z zRtIxK0sndP%_c=z25%t3#asKJbP}_fa>e_4us`Us8Y@4Io{0} z)#q`)s;mgZLlp4)7&*}&w!4XOuV7k1K*roTPUy}x`iL&R1j02Lxf+TJG(SNwBw(raeian`DhDKx2x& zyDN1sx6=fG+x!l1XqGk9>aluEc1jc%GQ`^sfE3bv6P9P*kihM{s&a&@WDfs?RtslD z;sPC)h8`v_p-9oa(k-LM&!mjX)8I(l^mzB_KeDEF9+x85VWItkP#H;MNUTS% zxDVrpQ`iTvZzY${+wG%<^S4SzIl$sD?o^Q`cc$D`;%=>~oXyH4Fkq%@B&9ea%V`HK zpB(w3#tyWUIn#F634Lcw&DA#t?llm~4-WVPbiGHrfb0#TZ?Vimx(R43)If|>J)mTG zATJ+kO1%<#9C5o4vlbgYST|y3)aAh|{_6WEkNXK3v^PsJwqL`n>yn}PGrmPG&SoVC zLi#k<%2cY|=Na)Xk5S9$iy|)s`=Np{m-t=52BocIYIlDhJjij%NSy&mk3E3tlJ%i< z+N;WlGzWtjV@fuP?()$wx+no1pGehClz-9Z!(-T7rsW65@mg>yP$zKs0jLhFMo1#M zycM8+M{0vUYQm?6<^;!NUX9z7n%354_Jo~Tw-oG6^(MX*=ncsF!+cmq@l+!!cHESN zSjLyU`v;SW5YpQ{PxIYvuMa!wM*o%ob~&g5ieHDQvU|Y#pv3y3Fm&5+0PX-nCsTX~*YQuULpuipSqZ<}C(85q z1LiD8*QA64i}lq7ir+m5Cb*iDRKOUY&W0hqTdjyJMRE{oc>tIDk|yfSLM@u8-ITDS z2}E=yB0o848(0aj41=r?Sb5TBNvy8$JNNDs-8f5VkzrA7#CaSqmI&c@%Oo7LYwX?O z1fxwJDaHYp5Sla&tlij9y*Vs&-Q8AifGK~kx%hZ6Gdq!P9FANF&RypLn*6{Y_g}Mn zE3`wAhU--H3E7Uw^WMA;abRq|IzglCqs7K@%@oPEIIq#%m?ea% zd$KVmby{q)gPPS)q~MhtJGC%8mRknMeXPt`?xflF>q!a&OEh&JcB=TlziK zv>^=motU{WQ|BHiSNZWJs`R-~5CXZgSy9V9ZgZE?Vo)o=z zBhC~052M=UX(Sd!VjCQeXC7FfcnB$Eq(t#4h<**&!G)*W5B+M-wG1Zaye~NP46e=99^w7`>5V%9*2a%*kL=JnB zTPWoD^2%&1FXYb91dE=8nwp)qpj&d!>o-QuPq}@QprefFT z7}-y@)XA7A>e;Lu^b*GO4S$5Xf$^YoH$7ECUoZ(Mq#T2eD zss-o4#`=(>c_rPE=vp4mZWbR8vV7H9I)!z{!2RKGLP12lxvZc&u=tKpt&eOL;1*1lb*>LWMoSw za+50$B9rrIG*iW%k44jfUU~oxHq_AY0E7X!j`-CM0}S-g1P)D*xZ7`!yKT&$-CLYy z>wS{FuI<|j`hGlzu;#0@w`dO8f}F2zvnAf)dh@msy@{nVD1h2`r#^zk#B_bIBT>J& z;m>#w;bkx9`6l{!gLu~66#GFj_~xih3-Synwm?dGH7zUUW{ntUj-*;+;WvGV!rRZv z4d6gN3n_ZgabSRVNP5-xgSDXaKCh$|;PQ`T;sn{s)l~OHV_IlfP4BQ|-l(*PRS6wv zCc`FML3FvB?ZU@>R6m4%I{+R!DTx>{&V+`KUoh65y@W^V(@73c!M zrge8{+Jy?vG#2r1G)W_o)NK0tWGy?AYxdE1%nHj1eGehr+TeK{1@2gIqr;fQI*Cv4 z%uJ`rrru7p`O|*)a!4q5OkfdIBr+vP=efdzFa>ZE9ZM*a4wg&Vje953J zg5O1vYT7CAie4UmOcUW^G2z?K@<5Rq%=#k(5>9eCiK5&nF`b}7?#2tFh$xlZZEqQ> zK9tj3e*gq38`#I;NS4#i`~#>3#dDR0Cbd6hiQJ0Z&PtNtg~9+;32x-Y8&q2vW&mv- zWpEH{N7D_`?)CbIPxzey0*^yBl9d20CH>`4y($281j;>2M>C*`Q=K++IxyInZ zcJaYrQzF|&Dw($97A5cagv#HZ(}Hp{=C@$%0EJ@YqPJ}t{U+^@BvkJ^Jtlw(X{8LP zck8il>37yvW`ePjZ?xL;cQL4L9DKbo@GB=`$5>O!B=B%$XD*q^QR{7SrBAl_LIkRV zuyDTnfNZ+DUSm`oU%JX)w68oRUA786sA&mS(6tiUtev*qz?WWoqF!19m;+;s6NYi8 zGIzyVC5C7c z_*)3fnxLv6^zcbLc$zq6ZO4O&3xnL8uph#N(5f6U_kyD`E%TFZElE;+&yL#H^{~c+ zIXCRcv}+&%jnzf1yps(uT(s39hCOa1HqO{m3;7l>pI!tv>H9wDH~EKRI1MvqB((dP zk)^iNo+-dH&^NpmEqMf_1JO9Z-H0eCov&Wjk06K$ICMwfd^>@H%XA}MPkMUZ2s09} z+1Vw-QGDgi)%n?8>PF)?mrpM6{4Rx?bSbKY*aikhgdHl@=Dudyp5rzdYqm#dGfhgr z*7Q3i3xu1z`BsXME9ReQen07f6C!L$4Y!3KV!_5be&-Crycs9aHVC!-k)?qTN5 zKhHk%)(i>KrtQJndz$cQ zOy>pEg(yQtXM;~i(lj@ z5BBFh{MNkT;sqPW;;_Gy+!XlT)Iz(!tmmXTHBZAheN zupkCEG?oGHLk;V-v|rDf4;a~S+IT3_WE5Khfp*X9>9{KlMYyCQ#m)v^MsN@^h+Ps8 z0*J5&Cj|BUu+|K}03ZWkT2+G0?3x8k>gRPb|jn6g*Js3(qwhko|K~c-^(;P5YyAI{(WAr%@ zxPlu1*+{WaY`7iROnIL#C`sNgXj-vu0!>}y#!^`JF5pcg?q1~jz%m4pbYF4Q8cFP* zk_HNKOdy<9K0QI$v!mP;GS&s^Fc5Z&5(K*?*lNB5%+z1=*8{C<4$741mS&?C-p1i? zQVU!KaIk&&ym&@_D-Cr+?AIdXi+e#cV`_O?Tbj!Y*pT3lb|DP$B}aUuyW@Gyhxc-} zNJPE7jbeZ(QFZcO*aBo?NpNtZM;G-zJnm<-528bct@%@)lQDK5bxd}iaX7)NZVo^i zmKR@y=PFEV)ovW!cm<BFbqi<-GOqTFk9 z(<}E5?z8O8rCM2De>O^vdapk|duqg`bQcS`AQ-SBK%S!V@H9tt>bilixDopHkrHrE zMajlk^gE|DAsy2&!GVe)0FQw$-`%uDeOEZFN<*2;ChAH<_7z>jGq$1mzCfV-B~;rv zhES8Pdj$WZehL=X%Q4{$R8Se4+!8Z59<$)ht(pIuMN4f0>9W#8&&uMhe975A2NweAJ_JQEAC zhC0>|Td+y&dYW5sof~eF0ixGi8M`OV<+?~TzLvXZ(1*ML3;nT{$Vw6)mvAP!izc~E z4vk8n0bfJfU7Hjxm28;_+2-V~i_tgX?*G~c6lqb?Z_UrDJcWi14n%f(TP-@G)wE-# z(qc915sm$RvOlY(1Bs~yE^O^N1Ow*K+;R;KdTu1{pk$kA^NVw?q5i3^`|Il-!2H7X zJZyWj8q8^aJ({|~gae$JAUJZZMMCB4<^A;i5tkKxd?EaJIUNAnJI$8=k~T{@baekU z^;@JLPyrR_vfZ$Np!s@SE^^`Fq`&q68s|U4#g`VuAhT^mX_Ch#F0P5lZ}drMn#q57 zdUUT}9~9s4fNlXF-v(bN$!+cN15ywD&J@xRw%Met2V{|vy8t$gc<3nriTAOP=s2r6 z+F&HbjzR0>yy>*Mo2LEMyBH&@)XIZ)^>%d0P%y-0c$x-KmJ&t~Mvk^u#*|CV`%p~? zCc(-AVaT0OY}hxhsYi7ur5q-fe&?lS^r#FQ4WF~11^OL>k2S!m2QQs~O|4&bL%ph?=>X^G%GF=x`(N))-^_{7H(%UJs^4kvz;wTGSXL@<*+6SqD z9@q9NxZsfEzRC#OXqh{;o#DY|TsH_NXszmyRvc@2#39IM1P_+$lsbIMHOWUc87@)N zHr2zuI6jm^;6PH1JOLO5 z7kS>o&9jU_#$NMhlXY{~R~K&Ru-aF*p_EnQP+e&KgRRrM_8Ru+*_Ic$=AeBs!t`{z zlcwF0UBpE*0-*Q<6aVgiK|u^!&Jo_ye81A`W5jzeHy^$B8yM302GJtC?i|qs(jWpU zQX4Mm`_Rw$+RTb1wj#-!D&bi#nfI&)zDnGF(?bsTUePm_Lo`MVhynh%t}b0sNxeaM zL8pSmppyq#BwcgIV}^XQx(b$hcR_tfi|E4)pU^+UDmijVR^p!OS4;hhSK#lUO_L_; zD@s$)>2%RN=ZnWeIGa{%Sl6;97B7aZE+k!!jG-uKXm`q*h#!}3hRaDi3JoUElJKxs zoYI0#wcU|Y#6C)#P6K#8NkrOQbyH4td|r@DY!*|B{T^=1Y1^>S(OiN)Hwpu zdUuS=)fqnU@-q2*BNV3jdxL&*jT0?&jCYUFLXg9xpEQ5LWRYpm&15TEPY^8J8hcX_ zOGepRy*;XRCSgnSnlUQ1nPlCSp=0n6mCLQFmafX6!o;KXRz6v1lq<~t{IyN5R*Ou}!3{?x6WIC=Cxpe@e-!bkzg?fK2BCBMj zfIE1t^_CVf#Wg~WB{@(EN|V3b0k3fk(yu@UyH((O4KB+u%?At%xmNl0m@sE!rk4Q@ z;+7(E(*7rAS#rGnKk_z`$}S|ZyYbLV`f=I#wsJ8Ef~z~(na0Mou%xe&Z=c|l-{NFE zK~~77S*v`$EFT1Vbc{w5dgu*!@z%uuSRa$?! zVXBBkX3ijDL!TT`ZiIiADa_T0Bf{BeokJ3TQheJNz<6$mht4Zog_&NSS<=p3Fl|NK z>K{ZZg5#~=l6ehJp#Dy9_A(-Nx`w~&pxkD>!kY<5rkcF@ga{SN>xWT6ig-DY{FA#=;&_8?Y_y?{Ge&BPH$shgS|K%HVfBz@HcI?uvQ$GN88PheX zjxP&zIZyPmVD!CZ*TKOGL|x^UNC?XFbRJ2S5Wz ze(m1A?tIX&$gcj`e|jnTmHySa`_q>v|MA=Y`WfX@WQj@fE&OYE*|Vn17B$ualB`p6 zLZ;@uX_4<|1~^<-&>_0>z2x*0oFtLW%w^kYSLY-=L2T^*8s3MEEIi}8P`TT+*Jm=U zNG=K4(j$QK&hZXiFWq}PL*fDY)c97NZK`^1X8y-eBA}XJ@GmoU(@)+#5(tY3!AEsP z_y3j3hH|1-rVRW66J|-Tmk+CY272dK!53^;l)HsoNUD(btC1;o1xq%z#)a=1Y-D*n z0?6jKG*?JYI*V9d{6OmLIm`%%j^UpDaepyVYl)&v)K%+eO$D%SH-YAGPvDbYPE0Rb zpVLigOKrIwGfV8H0l(7=kcjf6({U46WZPhp#^&bm9+1-&SaD#T&-&0caMwYYZ%&q& zApj0f5;aaCQp?EL-qe}}Mb#y2{8-C-ngH@bmyocRd^m9tG359SL)o!908+%8lNRzO zUn1w~1z=Vro2y*uC2hc|hAJ68M%H{zV9IAy^h0j$C$wsbL1_u@pv~C3l5IA&JH26- zp7S-BAxq2J>);d<-pst42Bpt0a^t;m6j zJE8bvHq7GVItR5!9uk4$ZX|n-w4@_HgMNha7YRpYx6`%+Ps9iuWxe>$=yfM$XV?t=YLUJRmWe)?eO>S(@Y2~@wVBE?+Lk2!ar zaLnAF_BVtHB^!Nv#(uj1N+0;M{F#XIJZFoofE^nfZ^Z>q*n(hYL7jj{h1qC)PgVxK ztkO4DaI=W#P<`87@lv)bQ0>cVK8tH}8~Bg3)TTIMHYm(*ruaftCG0G`2!0XG$>_^M zvLRQu$1(jLUa(RH-=}3ufV4HL_?KeB5jA8D4ee7=_KOEwek`a&TB+P~DYzQuwdF}4 z9jEzuE|B*##PaXqH3TKWMuSkpeihLL_bk%d<9CXh*b|7%u_Q^a%KM1wn_ba8^P%5RtdWf3XvFk@+|Z6G4gsc{4*7MShs%od?6+aun!reM10iCpc@T z@4CtsDcU3elL!PiM~I-Y33s6K9MGjJ$`PGw$KKrJ2x!bvg|Rq#IWwsSj>9FXT?`Fp zGadL?#D`3ux3bE2#L_)XDQPt}SdNT=nxV{ds}cdzcB*GEhx`Rp^#c7nTbEmfMcm z29SC?D?7QQ2Y_pKf_Sf?fvM2R3_y%BZ?aW=eV7gGSLYjcn=2H_1o|9l2R43LPllN{ zWQ`mXv>fDPBGxy7oe~A=T{00Pu>PeW-m|ASqJ8Fh40n>I$?Hn#a+mDB?cEG?T~E4x z_16JkVg_z@cAKa{Be1kqZ2UtDPaqwpIvsb!R`WY)ze#0z6bo@sYXad>+aqD_Am#SA z{_@#>`RD%L+~4@n=YPj%t^D>^<3$KYDKB+z@W|E5l?e*SZnVv1;|w&iVt7pYjZ>Z8 zJnNE|x}TIuc2kFC1RLQU2Wd0Ckt65C7f?fUft5`|5097@bRAAokEVxh2>6w+ulLfA zcbpC8J(E-`n+NwCcka#iRIG{hPUqXA>$oWc zp8p4BbA{8=FeN^T%e>UpQTS4nI4OIIpC3ZUh+O(Z|8)-%N*mXMCL7VkjR<>vFh?EH z^k9giLaM-4-s!`;U|@x0Y|{9*s1#8OXTi zXY~coM6)uhddzHj*r&glFi=W?-)3~v0#FEa(n>QgqDujtRTdFH#H$yT#rQse$=P<3hC!~lJ+_n)_@BjAx>hr<=;jvGQ8l| zigfUbBkj}T-=bR}px@HpP!1l3I5cyPSop?nrTORhgS0(dpDFUPB<6}8vhMj0+0H0k z^Rig_Id(Dacno=hI@havc77Ii^6#SM4HguxO&MZy1?xS)IG05BW`_4&*(O2siRW!tH-qNIuOiFFWnnFv3US0jMS*%e%g-#bVZuHh=X2?}Ys z7}t@0j^iaVk{B~lDqixcKfb%zL{x6Hao$Z833Bqk5NiBGS>9bz2sV6X(SB15L6w6O}rFYPx*FOP|D&fqUS={fHNcZ(-pg+PPamIC>vfsu{`jyU=gs&u?%?C^1`iSs!Vj9^JKb7kRhn6hwXPPZfo zWH+yNGYV(MOz1C+g~kIXu+Zy6ph&qu&9pk(1hOi~SN1hz$k|Xct2UEC2*I4MR1gbe z-S}EO0aZI@M}gUthVN#Zvsn@P$&&eGWLlT5u?^j>JefHr9bO7XfL?xUISEHX^M}Q| zutu&7Ik`afU*GWQjpU7;Q-?%s!r=Ra9)CqCMG`FB4zWfUDqzB1p6HLM`s^OEW9q)C zBtU@7XcmpTg&wiguOolFel^)`F;5En!*$9vsiadw@Af@1`kmupAS?ze^mvbjH}3^0 zsM}C>)47Mx$%c%ef(X4Rj+98hliUg-a^j_tUwDYbZMONYtO6Of$!hKKll8&r{y4W> z@Gb1Qi-$t$Z^9P9)xYR3-3aN1erN0lAWb2Ku~H1o4S^Y{GTv>lC4)a12FD$=Y+L^> zhim-z32js450Fe$*r2g#m=ZOn*kdv-G>4XOlTGufF= zLp0VH=f+HmZ+H=aKJ|WO12J1d-+S0=piEyc^#k){j7`{Zu+Owe{g3hXwyT$BuP6Pk z5pl+MdM+7E-M`h%(K|+9mN(WcWaz%J%is18eUWLq;WQzN@881siX}Z@kL@$&n$=gRe$z zh-#4d_MUz})Dl+Fx?gFY?l~KF4RXGB_^;moV}JB#UirWalTUu+@jw3+o4<4Q%3uDe zFJJt-Kk}nrHud=j{=x@;{N6wPH>W;z{yV;@_=@UxzvX?$KI5O-~M6b z{ld;XBFGz+PDLYwkzd6%nenFpJ+=h~OcF)yeYqM0F>3~J2?41IlyB*Q%YaAo@j}8r zOojzTh%RfyP*fXPuj|Dm9R8O->-uXifCEd|U>-dr*YaYM7CJQDh%%d^LDTQqre6A( zHCeym1SGR&!h677BYP_99#fdMZf1;fo;{zybtDiq)#hrI{)J`-4)=$N3jUr7FNZ< zLrXA*Sb%6RU?~P_f|>wgM6IlXa3>9J1Vf6w(A?0USp9EluK!vx_!Dd5?O_vUIm?-( z-_I+0v!&^eZy}Cyyan^#2 zI=YJFs3^!n)3yBmCyh!|Glw`z9O6^p8FLpMX3afRyFMJDDGN{=Pq3m)*Yn_UouR~_JrkEl*32C<^d>PrNifJSU&;rXL zYTN*Gm^|avLzr8MzMpaZb4+M3-w&}z1 zjqTOoxO~h8HJ5OgJ?m$`q+|`^?7>&Si*=bnc;p-KXXy!{0=-x)+#hqvX5DW_0=9Fz zv3(F*XuCEL2PR;nz2+2JxlzkLXS3(BUd{ICtlf9qeoXb7anM=5wMX7NnC6ll0Xh+YCJqI}&6E%+?`72?fYJ8Fvfb{xM&n$ymsWA}@4D z01zH-r`ma34A*D$DL!RWugQXqwbT^?bKDKrN!&oYu-{51ol4c9aIqz`s$=o3vZQOO zqvJep$ZxPch8~^S{dwadBum)HAvmsxhcN4*C`-wr0R)4m1aCp_?#J*dgxhz>w{Pe? znsnisrPbBx11&HDW4aqZybiX4-X1y;4gqXUAY++>-EP%07{QVuA(_Sitv&|PFm^64 zM2CJVJk0^ssI$3Au_Qv8;#^eKj3UB{Ddcr(95$mf-7G==yEm5!i<`g4{I%UOx_hk8BQ$q)}(E*L-aIe4{%~NUO z356U*bOtV2~4;YRwZ~8?U8Cgc*X8&zLNDe^ymSJ zJ_X+KQj5OanAHJWOq<8(FG-L{zY{I-4Vg&>B|g(~b&x9vkVi=eyq)r52lW*|_p{n!1S+^Rk{f~>?;gXSxEW)F|o!3GY?JW zEjU;&l5VQWOi6>oP(Cbg#o26HoIqp&O+9JrVu)qqjds${vY$Sh&@+C&WRf9Y!{Yt9 zhj_2X-*S=KE=T}L3xbPsIh{M+1HeCvAVcmDZ;0nDj>HaQ6UwQP^E&#;((-j!|huy@Eni5k5K`6;>&uuXZWgOOyCiXm+ex9=}}sN&v%lXeN`ffomHjZ0jA2xo37%-9>rnqNa` zz}B?!5U%|Nn;h$NGftN~@|k$_fH>#~2mxGilbE5kjsSHB`84i>wO)ShL4)Fo?fl0v zw)n1=v+_>JO=46_x#dJLu~yx61Q=gSdi`zbJ@w{r%f4$P?PDi55SBCeiO=;|(Zh3pSgQ`j!;X6xd&?5<732bxalwBKff3vL%oLA0W4DCo3i-{EiE6)iRaS*bFb z{{#LsbTOAfokK8@_IwTnBU2ufJv?EJg--KKpi;|qzCi1viu7keT73j+g%sIM zI<^>M`&0!|mzN^W`UK{Jm6tbKmHB8gq-A@(be;8bv_a4@o`VURM(-|yeA992>Hx=d zvCrJY_J2S~Lu&DUsx>=A6D59=LWD04F$utQs*#w`#D%P{>N1v2OuL)P@wdMCDVrR8 zaMtF`_0nzkglVoo0i{KTOEljHGdrIx?;)WFL>fA*v5ubB_AS{w`aOda(G*&m3_zYZ zB%6UP<^&*vPx@51iw{E5lMEi7>-Uh*Jytie&K-ff;Ay#mu4O?E!!NBUh!tsY`m^p1 zq#Jw20}_NV7HyDeNk9|&Jv(w-K4dn0d&W;`7o32-@8oe!i!s_TF@W&+)1DcY3EwtY zAV;Muibx_rPmRzc{$t6uE#_r86C$FpI^_CJw{X-`)|t)dzA#gB^>v%bV_vSomBaBPSUvKj#7aXH5K7babjnBRqr5X-QO%kNG#3PYg!ulvBq zR{#Ft?zM0H*_E+pzT|KHAU+nZ&|HT0hBFvg07Q{L8d}p(R-SsP70t5&8Su8bSnm;fWLbbc+XUFkqS?AUOaMIc1 zl6-ccdvwh?E+|{uadl9s!pDYt;HK=8tQuSjbl>`%DLYad{*d@g`6xCVPP*dLg^BVs>+BQE`FBj?(7rFAzQ^W{jFA*PXHjsiKX!T5@Y zK*5{!1L_l}_^r=LB_kK_nP~RE+{oq+yFQ?=fKn-Z@i8&(XPz-8pzO^6oB)$7yq>^o z_aQQ?#$`Gt!zvVMQ>+!*1n8-pI8*ig|ChQq0kbT*$^&0kWmR?8zHi+smAcguf<|;z zOR}(lA@|De%F0w`R&}c_S-$z+&CJ{N-n*~weJ?As89;)rDkBVLPzx|vY$F7S9ghc@ zWms%8z#uS-7%*sz*^CCvfEYk59vo+jb0Y42S=j>fdEQ5(%80nJ$BA=Job#WoAG(*r z+)`O(dWLlPKJ6VY+ZT_rViZ3Q#fOcw+X7?0+AXHNiuDgv)Lo@5LdWsgPjnTa<|)dd z-w{6y7Iq%M(I|i?$e)f7V-f8Amu|ZQsNjxwz&{ynG}LC_UE&(G@2Kk;bxB+_)jfi> zp_~pL=M;SG1vp3XXX=oy!Us+LjGsSsX0G6Qz;Cnx)`nmH0*qz`{`qbsL-X7FJP<-tZDp;7x2JRiqaPNXs}TMxsm(yG@pY4p0O}6o3E2g zeZ{C5m3$UDaUN>Wq=RM%rG}6|ralw;`Bg8}1)YKl#L{|)4*dV@1*DSZ!>`5^Sn=WE zWOr{riKCz3gy`=Sb_s(ELma57F2Kt5(s;M`5CaB^f}kV;Td6FJ?sxbmxDTrXi@5jd z{)Ru_Jt{k7zuz~Iu87{WxpoH|Yj?1ze9Kco%VF45Sql9f@O^S@QN_6t<0UUAYffC& z7o_w46POg79ci=t=bo`*izvt~?d0Lwe9fqBouSIU0htB<1CISwADFi4%3=2ahaAb( z6Z(F?S=suLZ9yrNut7gKiX8}};mY-_5T8CIC;e!rg26Q)6u%D@(1?Qxwhxf>R)0Wi z-)g1r@E_^)N(?u41p}}UCNUaK#o-9#;eDdhDr08kIOYNtyz1eqk)Wz&W(NK8{iF9T z2TGl99tE2*z4x;2#&}*7xdiWmrTtbn9j~=CVYa)G6j@>{bY&Plp!0{lH zDcA>ATq>fqWbLVHS=20|NS~AY_2VP7&HPKJ`g2s@Qt`^B=Kg|L{YcbY854;UaRJy2 z-!U3;G6mx~FSSV^iU8+D}@Us?LPU)7` zkh%P#mnSX6_^z=-2L}WD#NNgGZ>gOd?40w}S@DzbOS{4;e8o0pS?l!s(dB%y`iZ0T z9~}uR4mu$l`9%Igr) zNJ|%kwvW3?L@w(h`uSM!fsXwV+uQB5je;!Tj|MMyX|TaFh z@vnE?&$In-gPA_BuM~|QLhckBq-s&S(u`wDnmr8G#CeBO*xVX`WA~5kGi63@}N1zS1T9eBOXkRnG2I$&$J65~GL`T8cgyp76zo;>f%}Nf zQl_4cSTpHiaMb4$iB98o07lzMyJ31=YI4Hd&hoeO*Z{l zQ6yWSYk6Cwz&wE2pfta9`HkCK6r%bE5BhMEopW3Q&oJR+B|QuKuevS}Bp2xUPYS|T z`$@OeE)Q2Z&|9#6@>BuOu*HsV?4No8(MA(mfGgrkEM-` zvnq>HIx(==9~zaY0LezWl@u*k2a?2}M~(Z8NmijT9Kn#;teN+Q??I2SDKx+-1ju&W zz*xII-wj2>W6?wggFm2y$NBQ3KO2MCm&!Cvta6|P`E>)^Gr9a9z7*y8Q2r{Ejal>`3Sf0 zuhDxM{F6ctSpFF%^hm?sBgkk0crHH0tC1C|)RMNWyEXJn`h5&axDWsmu_F~kLM7;Q zP&1AA)0UNls|%K4VvYbRFepK;^*KB_lD$c5ENEi6SXBqj+*@M8ZXEF!wIB?UL81DL z!%H1u$a~k&9H#~mkY#%_#FfZo_}VbrZDmagK}6|}Va+#!bl&eAy3k}WkTT+fp#pR{ z*OI~2tpDo;=+#`D>lmwsz2X8y zUyd{hfpVHS`FSS_`nvK|QeI1MwYNCrqOPm^yWQTp9xQt&7?8M-^_Fw|I>&zghiwP~ z_S(O2xCz=ZLHKnXedT)_UnAXi$!@`ePp(l8|lo2W!SPevP z7dGfU11X_o<)=l@MLBR+C#uahz(vVxB%lOQA@rl7af36pV+6sOTx)Qo)E&7unmqKZ zD&rELUR#2MNeCHyONc4xup#iuQ`ftA{AE`3V(I2&tpX|RnM&t5}${ z2Oo8{T?&Yf5`srBqW3aZEjK%UIF$JOY4nErf4=~yVMr}8#(p~}=6m>i+mOZim^|&6 zEQU1f72C|x5`L2uh!XWtJYyuf^(Mx*y=)_HtB#z(%56i84oTrFh+9sp30(7G-cW04 z_lk;3e_#cbMU&a^*1yDZvxvnL{QtPmKCNbgv4)glDZqXEsO*hxruodSaGHO9M8`tv zsebBCS{&(kHDFVjdxiIM%WBE#(ufTaqtzvpNrV9oL+o|3vKf*xpj(RwAK?D{!xtz@ z&a-&g-;gZbp!~eY=vq)G}?qntaPCozX8N2c$Y+b}LMt&@Y_?P*Ji7Omkp+d9Lo8`4yN) z?eM{{!vSM=UMi@A)3=5%4cPp?>>56YdTHR_N5M>1F~=Z7_-6c^=*J&N6%*$#xyzxh zUfKZec6sw4gQ#99H6aTYPHhpwQXDpo!!py1$YU(u7wiiz+Y^sAM0Bze5+*+7#9Bac z!D%da5qD|a}LwxKv)Wdz-_Hd|qchtF& zJ++tW!@ga)PZ!fBE+cdg5L=Mlh*bt%uejQM8-$aXC66oFAs;?&cBsGZ%lYmSL=Y|6 zaYO?kswFpt7|kcz`Jg4x@$a*Fj(9HTqz|Y{$7mVRPI?uLT2^UMZjUw9-hx@w-JNnR zv=$}W4yf>GrJJ_fW!2DMFC$zy?)1Lfpuvcz({EWQxx=}3z7;LG?7XLSw%jRrsD zY)lOL1mY~pfdcPWMspJ<5j$6s4Qe?5~w9kgN-oUtHeVER}?`IRz!}_N-ihgJ`YKd zT4OQ#UEH?%P$FX~IVgd|?fC7;@R{@i+f=-hL&Q@+t%3kgpGF|?=c552mKm6od#skj ze&$=D$tkU`y8=)xp-8h?R4@^sD zO$_WpJcacch1&98(-Cs)$(UBHJJzLpXJdUha;ev`7OTgd@Ex%8rl;}3HnXdnLp{`* zCLg!PDYrEqy~ozDmA-_H;gO+%VFsPVZLlEOzNxEF`X#g>_@V^Ui_M&I&3w{5nh{*z zm(UWe^R2Ag%26#vVIN&vpL~zDp7Ni(gx1dZLuDu5AFZQ4`zoIfN_jHv3=@%2@&m35v2o+b6ShuB1)N zwg~g*nY^10d2(V&xh&JpN_)$%(D~b7>1tNU24w*T^3jW9PAqhP4Ane*omn3-OA?1Y z!CUst?O~#ohpxdKhDP91f@jKJ5GtFWtO(p@tknWrS|xOx9!5GX*At}N5q>F$<>=Wo zHbja_5})=wPHymuDR;@3yZ03CV6}iZ3wo@b$nye_07wr^#}VQEfTvL-Y_P=X4_XGl z5iw@E&hd|VC!b|#&-OOijM9Q&Dtt|cw*7$E7TU1X|a*% zmBAhf89k!gYS}%^0AjPD`BJbxCcn%&y>_+=00ZEsOtN7aXa&eMpCPYGRRy~&w6bzC zaz^Q=C4G541<)Bb(#}%Dyq##&klWbYrK6-n?p*rCSGhgfdeNNcMev5u^Q+hUnb?h) zEdgJHvIflSbZ5WjWu9IP-y!QYUAoqYjChert zQ(OA>01k6jq{`fNlI{Q;KHT?((n(zr<(1bxW{Y4W_6Gf@l77Ebj;|dd_&_9-Zn=;a zS6x38*5#H!!ceI$hq{15#&yW8=DS=|(*tp~t6|kquc^&sw&CMr|h!WGj#g;iysXyXsxe=dw$h71WPgI(VxLe<*Pd}z7LEAQO z1Bv4(u;qa1UGz+^|9;7|8nDeCLr0e+CQ8Vzuqxz%=qVa}c^Hn7C_LNhq@5lo2P))K zQPm7*_6Q!QeP8PxFo{?Q#H=Z-eu+`}5)3h#%F4a)`S@0q@0H*tV>du+ z*3!M2l>n{|e*41@zp$@LwOJvaY)KaBL-$pr*7~h$`QaEwsN_7{ps(72h$EG~glj;h z2l+T6{}03+&f7@=hjhjrELC;zqrA`tzmq#|j{At!F4Tu<9=Io1>@eXz1B zHc|EbH*MF=vP}n?w-FAn5ARVF)63wJ2|v#Cd=?bWT8LqCTn7p%$X=Pg2uXvXs_5Rw zs^+-R?@Zl_&^Cq*0Wu>|;EAzGp_MRFj-(q6RN@i9gt42S4$x-uQh-SJ_@sbw80$62 zu*nkG#C0wN3c@6dAH;?>&keF3KJetX(!%i(GM$3R*{2tD+@uRwq9hjggzm2RTUxVT zn)lkNf~pYJ+b(oSpZB$)vXOKbDJhKJl*L!Vdd3M_Seve`L(TgE>z~Z~fsRF|`gk;6 zP_I7XIYmB&kQgdsYc^M%uJK-C3jJcPTAHI7KiL?MV0!=<4k~wa+-86+2oJ;R7<(a_J0AF=V^z!+`$Q+7zU%od$W&6l)2yYNTgb_k zst5z^znku!1(Pnbc3Uqs=5hH`f0^-R*#_V-yc3okB`(5PvUs8~$i_glx2zbVi$2Uc ztWykxn|BOxHX>_G)M@8mlK%f>Q25G?u?bR~SKFG$Gh?{k?Vk@sbFCe8J1cU&9R7}Q z+~#1A&CRU8r9^uT5nSlSzoE(}`|x02F*toOh591yIy{lb{5CL;3|e}!lO`N}Lm1-g zC33s48v1^~M31ag{3$^yuiUjE{mMnAl{X65aci`TXG?hguwE?uDpJc%oC^*ig@N<9 z=>hGiB|m=~lx4r8EP!Q8fLySxja8pqg!DUXiqf4W)6R4rKq5odimVxeI4BZgR@3s8 zXE`pde&}c?Gy$(MEZ;)_1F`6T{5GsCFwDSHL(oce!)kcjB=)I*I1Ow(B&f4)?qRlPjD|$)lWWQLI9(|7Rd_~#=M+l0t#s-5O*f2Mon6@%# zCnTG*u{%xZGP;AT<}lSPpi;)tU`1cH2}p>3ry8{dRIlpeqDl60F8qY|6rgPR;E@tpN6}I(oBOI~n{pf6kDAdaN^iAiW z^RM4itxp+OWx?S)SR!S>_DTFXS_6a2p)Om@-t`N7U{QaigN>=@h@eC7KDJBx&bwhf zD>)DZE2;{2pv6isRJ4n9>?p1fpYk2vLYAM~hk(B2-N^w_T4q@R^{v}l*&4MS-BkQ3 zUCmlbAf+5MN?g#a1q*?bULt+gva5ZYE-y-&Hc0(p?@c-Bm~JXn3qJoX_C> z_>lXO95%t)+OZ3uYP^Rz{;>wXde2-_)(+}B=^MP92uz^ zD~kkfEnAvNYc7Es-JhR*8%->+N7K2F)FyH$c`tN`gp9@ZK>FE}>DHs>&usxC$8XdA zG2h1cx8ObrSyq?|4O}N~)4JIf<67Ki>&LY;{3N?$JvQj)GievfD7j;IWr#y0Tja3J zCs>8}shhlw)D*k0VDc3AB$&Oa_?0{O(oCQap}x%=PTxl3(WnL`ucvex9ka|Ot_6~M zlxdBa!>OLRt((^LEjFxx*^U~L-`QxwuRvr~E^7>Ze7?!@Yc;*FJXs{Gecs}SOgb`b z+b*DwR%;^rT`^O5)#oTr5iH(pY)ELnGfT(zYTGQ_6K3Da*LvJoEyA346s2yk5@(2d zKW)14>Q!7_!Y9os_kC2Y57C8Y-p-3q*U%hLadrYHOUJ8teuH#{ToJ;ILFe*9yU$+c z#e$8~aX84bTkvque%LE_$rs5)G#B2ZB<}5=1DX@YvY-L`X*()SPK4>=_OP0VhW^{^ zH+g>RreNgax7^%qeBPsFu$eH3P-FTd|?cSR=2iepS!zlq_fb5#X9PX+G zLjY|Dw8G<_GDv<*8csz=A5Hi{ItU)~O(s+l}3-{*R$j14Rn(QHW<>KuaGBWx&T0BbJcKMc~-Q(+t`4w3}Do{@mmT#l?SWWv{ z+sR<{s6@Pe{!PLx1C`u%rbEV$RZAT6x?Ilj&>L$dIH?0T*G5kOUdJYouow=y`(aKV z)m1Vg!GDS|coqds)jTS#yOx)lPFf$&H+Ark>Pw?`Lq%=KyWaK4tl-`1L_wAF0Vo!j z;E6nAD*)WwdSmvBL5j3yd<#C7eKd0A<+uOvO@BWArGL@?zWwdH-*)!fKK`?Z7RRsr zi~IlHZ@eyPeB>Yh{rCU*FTU@>{OJ|KFxN z$44i&zC>>uK(c&lMjC5TsWpU5`vyHEL%$!j@c*D*paiygI;JEdTeajR&|6~|yhkn57 zfiyaXQNsf0eStagF~8sq)_{1T)E=@)B9J?QRw+N+`+aau%jf&+X~9udrI!b}PsJK5 z@kYFhIcVZ-U(a(zBtjFe9a!H(!MEOK6xS&IZOBA(fQbc)LmY?P81_3$?O|w*VVZE~jxo`r{ykbr846|u{cY_DS1jE_U1Lcp96>n52OD}hl?W3#RTO#Q zV;@RD9x<+9YJ!{X*?6Tjgx0ucLK&5Z!5khglEWwiYe?euw$+utCHI6Ufdw#VIR5DZr3K(k9-*U*{$k zBg}F4HoQ5TIc8_B?Y+80u^Rex1)Ps0vLT-vBR?kQ-B8ATS=~6}GpZ~?I;=2mnO;>U z3X4PAk5*E*Lv4HRwmsptp4i=e+i;m3v+-Uxe8>bLFr628^*CM;o>;9hzVc~wLyvV^ zcotTnN9=B2R#ZtLm5v9pV^aN`8H5rq(OkFgF(IUrb=+aeLBJlV2B?#4=<&x!_A~?u z0jWd#R0Lxo`Tl673O7AF>L&atSX$TSr*7>11Ux>kz2Zg4;|npP2iX7PIE+ ze!m|oD6%FzA^(?Au{#sx*ao-_iH!)Omt%1Rw{b^xKbuu*zy?H4xu1o!{~XynMq5^jbV& z*4D!)em-7ZAQ6&LiO)zz!iQP6tqO{34iWc^Y6*~45r7gb8)Penm+@)Sva80o@y^?j z_eAbCGqvtAmwE{<&FAm2b%gaDG4=656=sM!!60P{{V%`pHZYot=}J;?!}$0w zw)Xm7%Hnsj;RM}oOG~JH3(|+R(Lc?{tOt8JosMz^D8bexkVYqhjv`bHoH(_sgr?MV z68_@RuzU+C!DnI|)k-m`v{;BMdB2}`FkLNu`+3i&c+2)KVCK1_N#3EvHROXnNYk*~ zCJ3OaNoZD;Fr6_gro_VWHvchN+QX)xqMzvRB_=4y3E@bGSUdQJV?qOUc z-2D=IkTu#VT0{_?kq_07jv}d4GG8|QTQxg-U|0=WgnkEjXt=HW%PN>3DB{{879>VOErcPr@ z7GG3#*UaH?S8!D0e{x&5F%EUs6!;Q+I&|Df%ccf%^&JrRPg%jx>D?AR%D${+M0u%1S3Hf#h|)NKJ2A1|6$#NOM?|krv-E?3HJ~s zfgR(+x*zXVlzwOJJdv|ZaObGlk!)tAE*-H8t*m%j^o2g*>*eA^~jq7B;=Xkpww#m_6g&-nRu#k?}z`*AcLJ>J>2ZkWD^olqd z=3Qg(6rAnRuzSP4gS^UjM|5e#LYo#x{A+#hH2kW*+15rSIBaI$v4YI(A2#!+sb{sU z-%Vk3>a+UYkP`Ge&f7@dI#dg+0m)arOczD@3GSM}Mp^_xXcDBLC%jC~Z(>>5U(Td zMVx8X90!7@;ZINx>E z><};Z>u$qr>1V1)+{5#4jQq0@H^V<8BxQfecaTlv=_gzPk}Aj4tY&KidT#JSycbBvj{Vvvy1s_UzCcXt(MLQUq z`(fOgYM|3f!LXzCRFU;lAF0^o{M4xIe<;g7?-=;pB7fEOWvbf>V%F=Mep8Cj9s7Us zlAW!s2KM)dBgIzz;Gv`p?*n_JNm9+M)|L+r;)Au7ikkfwBkOp4@}BP^JEKnmCu|)s z-7AhYro#dofmuTg0t2)OBd1vBC(81VPRLK+&pRj|w8*Wa))$1eb8te-g*ZkD zIOuNHQAU|~ow3zbiis_I%|IB39xC)i72^S5Jcvz2!E=PTKPYuQ%}%K%h0X;lI2tAFtxMpO^Ay)MaDzymAGY_&&qM= z)Ku3TuM5$U>$XPMqAoL6xV1Dsze( z32{HfDT7_<0EZ0pxKKpjb%DJG&Gh{06vQsgditoKStyT5X87H5j=(R(KQQ28-bYt! z#y#U0wNy$aB6>4kSui6!BO`>St|9@I4y!)htv)WoQr~eO>qKG&tYx~L^?H;Ip^jGq!m#H3$W(;MTj3 z2MWpw9mEk^3ry%Eo}#dXOfRwCh=A?8{i);|2(s8Kx%P&Fd{HoxY{K4lX#XDzUlbK| zp-)7rewJt}WNu@4OB>ZEXDyZ8B(N%q++>Uck>ub48qhPj$Ko7Mocz`?Xv7ftR)T=c zmKgezoj_rJSN`OWKD_^DzVC^z|I^Rh_~EbqlCS#h|NKqwJ-qhklVAHKmkxgJ&%XaI zI6g+xyX_lGC{4lvrVuj3{~YwGRXxqQxE)eN!TW2vOIX7Cd4!zFfBV0l`@q{?eDZ@o z^euDmd}97(U=0yhsM}yRVoOiNWhojmTn`r;9#%^^5_YIz4=dNjLXte7H!x5FQgYHJ zPS%A(;5-!P)Et~sr`>rh*DDp_vs$|?Eg!RaqHL*jDTFTP#QCYYN>>(vJXby!J}KxQ zMcP)gK1pW0*F=WOa5QLEt$m=sWvW;WffxMzDlCQJ?od_ylpC`Eu&{x!YfMt&r3#^1 zvU;Y{tYcUYEp4@EKksShIP8fBW+CExB`>n)-MyBypBR+=K!PMne*-ZZYO+s8T_tiH z5)DAz^|LY3XlSyMalIQ5Td&K@p1t#NrVmJphA`SINu_?WCP1LRId4>~9}2(@1ZVc0 zT)LTcqXGJpgshK&sy- z>ri46g9g((zp$0;=LERAB5g6+NbVD&Mr5*lAvmY`XHIDSUb3v7_|Hu3Ap3M(O( zw}y*&>{f*a@kS*g_pO_mV#|u3}@3D}m=AeU4IwBcRPR8fG`X7zHuSRl(|iJ(On~UK|8I1jtM|ofl|dw$D#-aBtvN_wj?F;V<4LX55T)xJh*COr@Ln z?KD5zo~zHEOIz6h?G=f~$brJoP|#jdG6y!>1SY^n*!px3*w4fegY+A103H9i+pv5y z@Xr@V_wzWI@tlSwh1X=gJP3Ji4fm110D3cEdF3Y9^jaM;P2T;|H#vrCxQbzR-@ftb zdvw!+<6XgMTuL$bHUd~MKwZ;SKZIkV=-%#nZbYoms?UUd{tHO`;(ad2xNu?ZaF72Y z8b{d=zuE`3clyDq;YJOoE8m(Uhaqa3pJC-ha9KcUJi$EY&&DmP8bS!Z*NM3kOn@kYMHWO$db@3yi z`3|oxdTN9Y1?qaTJ6Ie4J*^Hh8{QY{KqE$Ct3a!%WzzKxNK>NR>$=7~;f zxPdHm`}G+&(xzk_4l=AqC2fyHv{T{zL2I41*2Iu_1Do<2L1)L zULD!TYfh~dE`6-uFR~RklVu1O*`)YRV}nhkoGxu{gx^mfCMS4Xdv2E1hM;`tPRszi z3Ex~-byS>n!}=JgVMz;lr|ufhHCn5Gd^fv7i+SyRyvWV<+}OD1;I9nh49&t3S8~3) zocHw70$X~K-s8)ijV+%WBw%qRjxWpklKY1Lu&{f_{6wR<8?8mCC31TmB4nCa--2A@ z*ap=0`rGoTuWe$6G&#SC^wFlg*}HTwErd)suKRVO8LP4SJFg8O*k?aQcE5HHo$_Uw z%OcA1JBXPgBM!3u!8T9a$Fa7h=Ahl{tC3+{i(Cd_G7&^U4G7|ZNi+ku!q<}`aa@2= zW|UAz_@)#zMA8NT>#7@=h%UYlu#~^Mhfe$epP?~83KI)Wpe8{aA1jJvt3np_P9xxT zy&miYftU=F^q(SYgcDI2_WGh|DlfvIU zB|>CBv-JDwB4IZ5Ba(j5@u!m}{104({J^Xoy!tI*EzwlDpeiow6}eNUIpGHhE^hI{ z&aQ{Opb*O)fIa-gwfmUonWQ<`fX&W7fd3x>H5!v!d8X)pz9#JvH-~6IolkV!y=l*2 zohxo{9<4}^Nj0QZU8)n*>5uTuLIv6pD4S%BzABz`vC9x5?FfpiLVEhm)yJRQ><&Jp z-1;iO(#zQ^l0{{Ddf-c#3LgW%_Ga1k_vSYl}d;XIW$ zv)=N0R>D`hsc0b_aYWUHUTu~o+2`lk7&X%c1KPQ(BXYGfjwPJzX=YSv2J<%{^fZ#2 z>6ZIKA0(>w>1;FRI`<@&)w_9x`^LMGg=9cgc0%i|q%g|DV}68&vWLI(z6e7n1C<#P zU)qYb^gC+4?rjaHz))gaGONX8p0}arPxFj>_q`8|2>DQrlgodMnBgGp5~cC1T`yA` z9Fl%}u#tXfm}B93l`o~e*N5jDxBb+@og*Hsr`OV3ZeBa^b_S$!Z@?CIF|7pIN4T~g zD#RS!^;B0rfo%vMI3BV#ADTsEV!WXLe29#vHkNp)ot53J{q#tGV zMx#?bw17g$_o^XWfMb;!9{cOtH5FfO+=0DLCvNyKje9bk z&7)TL^|v>4DSNE4NbU<=r|Re~?YdJly2l%PU&^$7!mVE(t!w>t`RL!t*dO0p*ZS-4 z-TEgm_DVBv{L4L`=%=6lUv~N_j5%u$3cwLB$v{+lOc#s0Ig|&1@;B4zB1O$ZEyVoYiMaTzyA%%WmFv;J4kw+d%^vyj9=a37#Pe3Rv*7BL6^~wA zkPn6eMqJt*vSo+w06p~IsTP_AV8`ZVWJh=84%~shBwO3cVWu%cOkB0}r~v8^chD)< zNaPrH+4+#zC_KbTlZmG!_Z1k+~IB-Z6C&4IYq#KXZrNt}z|- z5iyiY4>E+l><+TL8F%&fkng~DmMl=!p@vY#W(yTOukt#r4$k45<=DzIBut$#^h9ca zy!+Sfl7J6o-}^z=KcerGCL*-pr0kQONm#H{C;TH^5TrwDr>qz5Xjgz~Pzl5xCLk#? z4w&Jilk_{Cm}C$Qp4~m#une?3iKxq6J}Zts_$dfR0=vPE z#y-8#P<0sVto!|>x!w_|IhXboy99@-zmhl!Rn)8OjO1ADn@drahe)7qJhQKwwiK9` zxHPxfH^y4eKBJPCqa|nz203~ql!G1sAdUu2(d!s)qN4)BaWJSP665jZmskI&01#Dl zvDCkficJY4a#Ye;HCX3Qw=&jhO$>0FMvmHe%ia75$E%KkL1UOfeOy4L0B8IeZyA4# zC-b~G;~7eMZWYflHNieFA56icJ-lMIeKd(Pd&2{Lu3A=tzs5!V)^-2&imZFHoffB~ zGQR1#6ck+BHtp+M$l&#j$kyIa{yZsV7E$pw1W#j?`&DsX#N=fPnbbZV)qTtt$olOR zU!2eEjq$6v2*rwvM}SP(oV(m1ii4Xw*aT(F7&5r?tL{XvS_Z;vE^%LP?ijS|)py|D zrjHaxnkZU#F~3!+W~JNA+a?k@%GId6LJgvJGARm;$y~T9pv#|xydJgVs*MN6-&B9N zXiI|?+_U~#&}SM3h?(((iBA&p$?oJ>d(ncg3dLbrF!us0Wg)ydUkd`Q3-sPVtgyM9 zhxvlkKOW(uN0c`-L0Dmn;HO6_NpDeVei}!*)dAyVnq=vwwbWPfy!%h7$V+!u3J zqye!?5yuDlxLCh6B4%ga)Kx{6j@y0ZSUc~o;cP~%f^V`efHq+avCrKBY1aMi_J%6s zj)e7O9qqk$^9vcpfQ>&GHuab_xaG7<7KGL|hC&f+gWXY|T?b)*e#+j%Ced|`(?4~u zEzFGMr`-V-#9~j+1oTs7Z@SV{)eAJKw={dd5x>3cm-H{A?OO#+M4Y8m?)gV;l zw)xa%+Jp{Wz5@GQ8ak>QXJw7hCE*q#8NiVTm<%w1@W9E>jqusOl8MCx+a)Zf0C9<~t5@ z;vN77tx^jJz2tZ`bhdX1ufK!#67c66kUSD~d2v)&TeXR!_Y}Tl8@!i|f++yJ5P7ID zPsH$JY?yHlnn&Hg>c%?XZEq0P z29wg4g%x+-qNyu&O;lrd=cv&p>qy1k)(xHq1yjk$D?ONi|PY5!@^VMF*y zW831ce0veteJ|i=9jM6t`_u1`_Y@d02!N}KX#5^c9=a}j#{2UznnJdAd8y-0o}(j| zfsnjzH=E124n-d6L#APA;f*NW(zXQ zT*=nY9~q%}aUzfVLT&R_CNqF;>m!Pb*(r;MM8 zisaUO(E^-@=@}r*3qE{>=FE0mVidU@Sz~vU*5>7@)m2xQ51?0}cWn9yY)*^D7;T~h z4MXo#Ea#Wdc3wK(e0)oskp%340!vR&w$W&ARx-}W0fs6lJcDIy9ILOvfBwBw75w8yT5zmCiMv(M$i0BSUFu2fOslT4ip^m~c!j!&NhF3pZ zw|6LXg|{U#CB#w)CU_#!t_b=YTM@wqqUSUH5X`^`q)uMTzkqXXPIcJnQM|s!Z%z9IuUVjU2 z!caj+5d+KtGMD;9v4JWZydXIkFUDbj(0~ORQ&BTK47!V;4R;lnNNHxvYgD^8NpRbj zjju<7rRJ0C;gIu!y^l_Hqfhy z8&J&){IcI%^N7Y>}Fr^niYbSOzuHuHqI*~4{&fXk z5cIPc?1f{A)W|yacRI|z>;u!b$P|&4upZdj&)$hB18!50_B@~&dtxAAn-R)pAaZPe zuwd2fVA)SP;#%BvnIXP?1Nq0i9tE}Y58tC?u!SDEN8w;VH05hJb5n#!z5Iqf;-0s zWO;m0k9_AH4cq{$X5Bs)`T|Xg-C2ik-$`~J_iu%+*S)LBO4<&LU)M!@1QYYxy+=%< zS+}cqV415Xi_v4=4iDi;6kM3g^Y<_c)JmkH3^z=--HdF}0tp5#caw88%<(mz4%5|~ z*kF#v^6hjOg-p^Zp_NQM5dTq2*}<)4o(RIUFhPxg$Xy>_`K?CdrIq<38B8iw_d2sAmw4 z%xr2tNazq^tl!s_C zafZp-8g#|a!r3Ti8L(f-OSXELk3@w%5%ywqfY1ebzq0G3|&++dSuJ|~5Lm4k#-sgUM zh_7U~#m1YM{*e)(%fKs8C<(93;uRy`h}X#&UE+KB;yx7%z@%On-z%G)g+fQd@C}CN zccGT^sC%o~A<=sc5<|rR~G9Id_{DZQ^C<)(qAA^jgJCWZe zcfjoujNC=g3`5D;vh6f|b8nVFI;`s@_8iqtUcyf9Jr-unWvv#;bW8l4!dZ_`LgMv1 zz;_KF)YETyX84HqhTG_aSd6jY@^(AvmFVcJ+7s?HCCz&aP>m!+@-pR&HH*9~g$|vl z=EG~5!G@(;r)Z%ALj#OKnTa5C*wi!?YztLMxeKw#!MN$EJFG2r)W#=*%>Fb!s`?}f zq-s2FMEzZF>?YnnA&A{@Knb}4JtyTG4j;?+a#x?ZLlJ)9-xSd4(_HS2hPs3r^0`an zgJv5U+fRAI7j}_t8rkRFcW1&8fOfv-whU?;V4J*LuvDlQ@GOf>Me}pNrv#8N;(fu~ zjG;C{Fi)v7ub|THmN&mD0n%waVOO}ZZfj|QioS-H9{tZPApW#Ktj;CftjFjOmhBWU z0PHP;Azb13MtooCJ<(bLhL$4Zz1bh#vXvWr1;>;1+@1=JjkG|raIbKb8Hp-cnK2sb1tB#!g=5}w2%w(wLX48U zmL+&f*$%_$X1X=C*$+azQ}?^B$7AeN>ygWN5zX^V7f zSAkpNBg`C0PZXtNeZU%koO6|&S&B<71z731h+F{1{Sq?*&Y@01T$rBZoaY>}_wvwp zW4)f+?YRyz9WT(G!hd+mekghc$z%w$@zfnEvOJmwWT5t-gKFIi_S-9twx``2C{bZ( zL8;_qLzz|tCYnrF$2p3!=y!>WbmtBMDNNIvqbLfR4f3-e!)s_W94fdA z*1VF#U`mcpZ4<(-wbpPF#MtD*rarM{T@<_ZL2zZPbtP{qG0e&dazb5z8qJ3ohZ+<1 za>C`7>QmikR@*DeWI-g-M_dB4a}pE)Hmqo&*qsK)yizSlx#@f z`04pdQX)x)8E5Kk6zDG3iI`5v6(#gg?X-RX_Y9gNnIPA(lKY4+?R9%P_N;{1iYUSO z4}9#{qzKgH*Gsn%p?3)C5bEnUkfhHg#Z3U|F{=J)2)sm)cJye#a8TSUI#jOaiKM5q z*9?LdUi7UrpL7d9*6p$-r@`a5JAfjONgu-}2Z;QXl}Wpu-=fO>a$QSrU4HD+W9Ab# zW2hiO<8*dL9`OfnMT`_Zg;*JbY9}D3OMhJj$s2jrGRxCUx};Wcoz#iQ%B5cBt`y&G zj)LCBHxd$4XOZk+RT6l;1PBuYIgM}t!E?}3+Fqr3;)#dxAzzR;3MPj_|Px> z-UsHt=vzxUQ{D=(m?q(M`bbQUkV0oh4F##UrVmwwcgi0L6AL$ieSmKvS7GWc^Ok3q92zh?_)8!R@{+G6Xvl7Y;GP^>;ol2)KuS zFruOO1P8;{J@}_vLjg7L5k2F|9k$+eX~6Egr0?DpS_s9mRXB{J=HuCgX{gd0@fc8u zsfst!v9MLJThf+|STMixETCgRzU~6~7%VdULWCVV)zIf-H!~{`P0=mG8os7RiN7`~ z?gQ-aupt4(UFlC57EoCJxs>)n(c0U_DJnKi{^L>VBC^dG-Iqh_rg($cz#cs`_Z2m} zOhIUWeX)M51}^7WbRQj_AH(U`-^=T3Clk(cJ?p(Ua)y4W{)51Q`lq4>Ww}^M?`{Dc zcNg^o=%B5MK>3!uGK#qi;8nnj1g?Dpack_|#j(P1-%cDNgB2@bNzT}+>!$t0U9HQ- zAcePpH0i2o4{%8}cfSN42b<&8Q|s;{>)&#srb>Ptt^VY=3OCn78$Eh^Ae+as|J)rI ztdvl=CDtt4Fp6-y)1mZlzlu^K@1JaLW-l^+FUr}fT-AOy1Tj02Z1#&JxYotO3ZfBZ z{UD1r3q<&cxeit$5yEj^2C7olLNALk#R(C4X4UL{m$ix&-!8SI?J4}SfnH{XN`&Ps z#`Ew5qrhjbF}(BrI}mMa)v)yHz@NE=-0`jLfa}j-eerz*~G=HneyO;>yWcp7B!21apMFJCd&@foy&QB8% z#+Xz_^b8t+b|;<%Sr(Mc05cs zQ0#o$TiIG+uqMGWsB4T5WI7lsw*ZT%NMcF&5`y;^XvM<(52lgFc4lr>R5v^M0a6v1L5M+?_p-Op7y31!Q0 zTJBF+){f_Qm=h=pLhqCzJBsb-+w*Ae5a;OQ#d{ScU71OulaZ$ zRz(WP24$?t*7ZRK}^&Or=B%N6cb|RoTz*AD%!s3CR$Ad8Dn8#c4ET66}JnM-4 zp?My1>9#7q)3GnP|A6ay9}YuikbTgRSEF%-BsQ(54E)>k|z+dTb_YDJ(-boG2$ zB-9_&5{|;Z8?RKAhUQnEeVdO{$mUlQJ2tBmb#&ht|G^KQ2R@_W6;iQ)VXPdCA)!eH z<1nb}CD?g{ve16{D*~>M?Dtsgs2F_g8fwC{osH#QG4kq;FQz>ZU>Ev@`6?fa9eljF zl3SC6I%h#4&K!S5lDGB!2!Z4+*BBmJHdHc)wGuF>kNUXE3qR|vL7<5R3;!650*&i< zZlUfD+gu+mhqTqqp450Y*rlc>~KD6E#^g*GI^Q*J;G`pPl(Pkv= z#yXY%))tsUO(Or6Y#%>S6GwVos5Nn1O8YdAA{4CzmVJA-wO8EUYVM>x&=r>q7}%Q+ z|NMbp{n(qv-}T|ode1Ml{`zV5>Gk*3wzBKVps2)ve!%m=#|!}!O$;yW*-92o7eqN! zHdKUTU`|PFkvkg7SOcV9XscBtLZjrCR>-#tFZocK%+24Nhec$#~ zXWsp@pZkLHR46U`2ngdC4mJFpsg(5Co?$>@c)l#x%F7g*RE&N4#KHuoR@0Li`_@qt zV8>N9vjkol-WPe|IMyah+bw#8qF^s^4F+-=SK$i2E#AkR1iGV?bHgswmb&36~$inhEtl!oLHw4~Uy; z6S~@)4`H2{OY1Es#ai0e!*s-UL_t>eY+E~Fj4#9i)8NLunU- z8LizRK@fUwq6(UP!`LEk7)XcbSv4x>qqcp#KfaRyFQU|0;4Oiv4JR%n z2i~-mekX!j_}cuWumYYTVix%RY6O*f&)h%YULWKyDAL3C;=3C?Xh>SDJP0Av8$2WT zd|_eQ=`Np8ta1Evd6SC3uEn@quk>ikz)4GLg6QLeHw^ ztI9U1J`;ump(HI&Wud(c98&&1+CO#$es&|Y|Dia#YC%Ep~+@% z)0cv-|4pn)JI>D80t2u(Xs6##2I80we}}Eqjw?&etEjqsPZSwqQy6{ZL0RU$T8P$Q zN}1@{kg$(w!cnf6f;&Rze&`NwE|+?3&~dGi7yxL~Lm=m`XYviTar#YrPs+delJuAv(e`kQ`-xFeN7SmFIezY}5M*%l5p0-E-X*e&%+ z{*u&uo|hYgN6m}^mF={uQ&Lrt^wzVcMDl9*2xk^fV5$oEq0|EOGtd|Z>XmqvQN@Qn z;XlSL15I6{O*pj20U|Sh1&EK)V)H`II$;g#(;MhSxO=9a8zk-W$M5j{s2T8;-v^Ct zeka54X3+Gl`0>ct>Veu)^98ma7d{pizM7V0T;y!E$dJn9NXRmjmF=GRCGl*BoH5ei zk2`AAMfZvi$z|yCUh+KAXJ88DSp4!sd$%h!)ooF;RiH^*3fC|$b0R3i6CM{jUss4H zGA?^GC<`+lmpD@?v7@SxczI=c9Svg3R##3j*}^7)DF{egJpC6Mi~QYNuAN+APBI4-ln-p0Mo;QTF(2J1op?mA1@|`seieio0ef(l$iKgX`<=g9 zkX+(+l*Hm^q2CN92_!B-~l&3_;tFdC2Om*Lg}zAzI)fcMqr`9YsjPf zkN9b2bj!ugNA@{b?4qAKh97@>!Y@L|#G!T^8vKnIH-H+H=c5^}U}vpITw2{S>umgb z1Yqk4=9H~b+6Lpi7>;uvt0sn$?|9n?Y1d_FD5O0|H}X+DmE*M zbT{4)x>+~|5}qzHFdQlrmb~nzX}c~XX=iKQ5Fd=~fs6cE+Qp#_TdU_8U27lHwia+f zJmIToRT%EIQUb$A_A-86>=v2i%pXn1WB?d>4+JYy?q8 zvqW(AC9QX(I6K# zguhFXNhKGheS5C$r3`4_h4O}=&6TmVZFM{KwFQXzf9l`E*u@PZ4J_y0 z8-AH^e5{U?o&^l5NmYtZV0bz*%Ma>2px>DrhL4%(yCf&E+A1BdmXO37Y12MZywcbG zc8EvVO>u@X`YReENRWUA*MCCC;A2;MoXq<*vtnE2THy%at`jPvjD+<@yA==BU+q0o z$qb`426Zo{8+m&pZ9)Be_Q^94?e@f-IdMUhr}d=hkI7w3rP6L|tnOun=8fp;M%sLu z{`QYUaG)vapl{5sGvi=5mZ<9J^k6gyw^4ijamOE;Vcg%S33@CBEB$pv5tt}8*c<<# z&$Uf5+Hd6yR!zC6j63aNvW|hZk=jliVHKTnB)sMc>3!cxvff$WtmR3Zh8s}y;r7)6Y%PMNC>@g6UY@auOc97t`MS>U=Nl0$&=&453bW)293HBCqE=6PoZI z_T8Y|S)=6c=Qd4$`>?h_JBgns`?)*OW)2QY!DYy3M88u(u2(xAx+{|>SvQg*gA4IM zV89)|XjX!Rp^C{=vczr@_`rK;U-`4Ik5} z>dhktyPN&U71a^PR@P5j`Y>V0ngAriO5cdxUb1p&Q1$@(qQyYJ>=Fd-_6X;Hl|YDy zchUkG0wGKzb4~{GP_Wd+0CSGO3_Z%q>BZTT$N=XwHSkr8dV-J z6VFgK)gSKYZc1*^01I>OF3gnwGv=V3SX@r^$_aN%BKvUuE)bJtlS;CN8UpkKFce#| z65%5Lxs%RHOnY2KKI12TE}?R1Iao=3aYOTt`P!7CMRRgrV`gj-CanMBsJwCUG(w^% zC=Y3pdfsqiF%XMUrHOl?+QnY;MgO`^g^OMjY&0Tk2UuDqUZd{YqWOlsu>be?N!>Kj zEhuHnq{N}mSqB){xH8@by+@7&T?J^5SKv1A&Y3TcO8c}8GV9AZ;+fQ`j@zK_#BeY* zcNOZ1Uv;||WgIfefO;N68a6`-@x9T2sbE zjoo3BsGEpJFdchy9ClsEjNkdI?&1dKzg`TEm2BoZBWT(`5DYuqKdLyS-#%y$KnW;D zi?OnUt0AlnGy;196O9nhK=?LREooofyiP2U+e z)kIMmjzGmEIaz~7{q2VWY^nW~BQg|P5wuX6SWmiZY0J9Av;R(zLt4mWbroTK;DSSy zLMeQxEA%OM5jQx>(g)<-SjFZ(|Ie*`er7uv1?=O$lFesSeFNQm%xXp;;gVka2YjMy zcXAxNvhRdVjQY9npbQf_%L@EQ??$MU28sa9n>>!yj!_6c6*=MXW95X8*&e!^3<;DP z3~NT!+lfZ)78Z61+-IMLheZB*#D}V{i&f2X2$*w+{>&0v5lz1xVdzstdQ)Cazapci zx?L*(bCX4K3lMiWxoVF?RCa?qUu*H!1Y2Y_)?uMM?I&3~3^^z>D={i>Av)A(kg~j9 z40JLN0byZCEH~3i9_#M|JyL?|sk@*Og)HO~_VSkN^z<*sb@UaPteb+j1gSBoay`k1 zO_QMsXIO8w^n{za%U+CN=^DkXW|me>#?7=y1%v+U?}kaPk5pyFc5U|#MkADtWA_4$ zxti|_6Ru=RpihJ?(?NdyzEE>~(iFOqcCxa!?zq&rlpO>B)%!t+UA1GN^a9ujO*f94 zkC)Om(m|csx)V_C{|&%&gY*2xeW5Qb?0(79CePVV;S~lqJ^D>+1$@pltG>(deb{oi z3AMARSf%$Ky0c##4cE+sOyoCY{F@wP%+uE~SJ{@6npzmo^Ge#zHs64%Y50FJH^&d{ z89?GXY3B06tnLZ8#X)>(s1j+@E8~<=w0}PzDeK(DM4JZ~2`5oKK1rie5h`%2;zvYb zt!S7@4=^^6G!ecf%W?=&IBVQ)9lyf2$Jkxubsg(9j#BOn+OH~|;Ti@j-opcadm8pt zVr4wvJj7f_a9HW$>jOh|k1}h>BJkcaR^Re85neCYeMdLS^bLDO`B2Af?}TaRGVbQk z>wSy=qMzf(AxeG7p0Xt2u2Q!bww|;>?N4A_mo^$rig{3>;#u_Y!h{?y;FQ=}rK+c> zCRS?K)O8PQ;rd$dqgvf<_2TH>V6*pTfZbM9T{PH0@4|22OEc4Ar2$K4VWVnp?F~k2 zpq7!NCG(o`eG+w$!9+YU2y|vMmfPMZi@h_RnqR~Lf@*vlR+|x6kea}q%#26F-$;eK zo0mYzq_RcRF7Td)@zx8LUMJqkI1sdgMy)aRFj|Wf(8)6)yrlqPXfDWy>c~vDL>fQ7 zRn4d08P^=(^YDv%Y4(roVh${BO9glO6$lC3PwDmG4SPcwU;(UBTZE5E(+o6%xI}kt z&yjKrKZOi^5M|60!I4l=ISXchRY}Wm-)gG<9I-<2j_9QJB7?+`BLb0{UA|Nq5Rp*c zPY|%(ylS4JSeex$7*1hZ%Y>IJ#oD|%zE8ZBXw6B=o*cKg@ez}=w4SE@@Nq%-&#?Xj zR6m_3B~KC+9Lcth#@)B#w^lP0YNw-)ZDBjt2E~f(gple^IvSIv3c3YR^hmowYq*G4 z5&_e&Xwxs`vBzzd>v;7%g$c?flMHrCx%pssG<@=t-Q0RqIr6)Zc8T$>86;CKDWO!! zZ6|Di#B9Y%YJx{qRm?U|F!0rMNa7A~Wo{-0Efw5rE^_fIpO78P3N7G^X;qbt>0JT) zxKxwrchWW%-4gr#A~;#7E4T@7VqB+|TFv-Kj9!?}i%XpN%-smY9`QZ~U4YO^TNmMV za|fs&d;Hw^1};kj`vhea4D_{^r%mc)O<#|h{E48)`zl%5)_uIsH~As_u>4K_0h~&| z{V=x-m#CzJHOgLzM>EW9r@6cCr>}v6)NZSac*7Ui$`EF0i1v`1nM=#{7f0{o72pR1 zxY3;;u$=eYB&=93pcDZ#x1eKN*t-P9R>0pc4udHwE%T%jdJbYhR3y81Qp~!q;3x9xd4_P3y$2QDo+LJ6yxOew^ZkqqN^`M z19Cj`@xYHoFcJz))@dx8j=*)b4@4v&l? zxo^Y|AuA_!iO2J{!KMhZW?dJEu{>AJybeU9opo(EP5_Cw0P)n30W;5To0YTO$0s3& z5GeZi(1w@_dfb&g>E;ON$_hQU!^oO9F&2i|aDh;@xB+jIH+QC^JJgt2LYhL}m~=a+ zB$m$zhgCpV9Lf%twva-(DHtgMWSVNNFVD(HgZ?}~Zah1*`u$vzEEk|M z;{r%oY6cbioYWX}vO5G?QG^=4Q>LYDT$^RQOMQ2mhIadcE5%~wvOj>$x^2X--lkBX zKA?xr&)ydbgqY!EyiR@>1uweW;6R=BdjTlnbdjuiv(DaKAWrTwTFr~jvdN``rfTHzPlOqB$)yT1?k1;E=z1J zFi2=ib7iFRT*7w0L)^aE=rV;fS#*;&S`$!Fd738%se>@xZatQBEb9ay_lFgTb8AIL zo1=T(9fh>DCvGrnPE0bkJ=!V3C3-%B2{|c6Yj7Y&{H*1orSG=Hsv~L%O?ro5Nt~>! zg8@HS;dw1}^pY?~-KXZZJuVI4+(S^3wD|VjBErVTWsLac#29xx6&Fhxf)(Jhq$-_> z1As^`&W6wJ6>V^xH}^g$y5tzjx8Z`E^c%HxH32lmmZ2W4t9f_Lr*W}m$MrswcWtpC zSO*ypw4Oo%c(T|UAGBA1Q-KZSL^P$H6YVr9AV3I_bjWz9!3;|)b&RpW-~pX8+1v-7 zkR^uO!Eze>YiP(WCPmlFbaH7~nc@|6^CHyPr_uye+`v_-Xo}IECfXUWIZLTKOlU4g zQJ7a|OPP1BVtk8v>asNq}GnDP`gDSt3 z&O=;`K800-OrHIvfxA`fW`7|n@>JTdDZ;>{b7|6@OaQJb%%(lQ9HOX=qc*LQ5gbadiAaU2d>LYiet*Ohqa~EdoYHhws z6ReA#2l4^+>nk30_%L@b#$U>WfnSZOpT4N*Y(**{8sK1!uNZ#^+6``Ic#i%Xx03~xOjX8Mnw zul)$7`o$lAZtM^K^-oOw!2k01{^*;&oWoIo^S)^xm%N@2quAryo(2fW7*nD#yv*UT_`IG>hY_BEv$ShRI%W zN$Bn($;W*1SnF9gt2G%Q?+!HMl+Rcolues?)MqZcTjr)uKOVHc)J=Mhx$P@#qjsP^ zkD9T0XKT7)^H~;yO%G@76?BT>(x)Ib7%r^~KyV1gII-1i~YYf%5$_W1O52Y`1#2V8vG$l2&SP&;Gd$c zGk>6$AJ4WtQW2q~gCh55cyz1-$158w3uH}D+;>(Wh!-2_X)x~95xG_l`(c6nAT9*; z${F?>GU&qeyHDEOdU&7cB_fIUP|!^9wpDQ-;5V=yI8hrASmH}TM}ypsU%11*b&BJz zCfaNyI>=h+Z-MbrJO$?Cm7*IOlE*Ngy{d}UF((%$Mc|mh#1gGxXj@9ZqrNG5jEq%muy^76|7jm@?Sx|k{L!8x zJ^>`jL61?-f1Wc^w~vF2uN-B@0^yzeY0LmZH*PrEKI^hy+}GgUEYXj%ZZqpS%9aCl z8IaH8kuYz}PtAV6BpG-2tI+g?dqn8mA!yTVMuFn$l_WAGxZ{^l=~LWJ2*(fL&mjSYRlNi;z6^y4)R-!xbo*oj`)&stC zJuM2y%y$Lq>`QoRfPsDOUFhZz4+AW^W6uJ@>^o>%aU2vjvX59bW3=cya8?)ylgFQ( z_0e6~y3l|0b$6oxDW=!=Hc^Q?FUq_lQES|duiK~HAm|9`#!2%DJzYEW z2ev8YC*gcep=dhx#W36OX0(UrW9@r6Z82`iF;Sm`{&y|nv7S|mHMufzP^&~U#DN!Ew7qoTl5Vj}3Md)k5 zvIZ8At}+X>DlfF8DRA5cyGfN-BU4fe**6h!cMNDmQ0j?yIia2lD+sPQ*cq;y%A7P5 zkTbkJDvMHsl@&w~LDj{EUK^A#)}QLOE{)WsUJl-|-H^wV?#*u*5oc1?mM-SE^tFhU zs%~HT*ACX&x?%>fX2QNWv-tpbA4rvDdRM^A_vyf@NtW^v&zAs|cXxUx@5<8~$!UaI z0s4D%XPWKecLdE}2hUsOv#E>3y+P~+H_vGqSzDfI4B1`p@a!T}Rw*Xmvu2WP*jQIs z;^dns{%7WJds42e9x=(gT3VszdyYclc5o z%5TXKRD-<7)vaxw^<=9#i*cv<&Th6)t@SG2BEbD9XFJTRjQYkqN4-47QBIW8G2g^? z<#jGwWEwcz673HC4sts*Pme@u&XXMd4REO}cwe~q7&#>$l-}_*vNXQf5MlkvZhor^ z3X8O$>aKxv>~hRDL!01G55_Exzx`Mv1is{$bo4Sm*6R@hcx}%yZfcG;C&XY0a}{-w z&0x}7K>$rQbL^3WiG7^tttVv~QaK-JhmyZ-ln$zdT*U5_W8D_Uxu;-WqH>3sSb!RN z=X|%j;vWw*VDK@`7+~-}Y7?$^v*!lsw$Os#bC(WNPzjaQm)?%g5jHwxalZF1F>^Hy zYqLjnb~t)_h_{A0lW8Y!XJsW0rGJV=-jmTE=y%>W905lCiGM_tBjroR&jXM{hI<|i zNC<76dqu^SPQh^W{tHFFq0tX{LoNs=DDB=x^gBVNwg+6}Re+5IQGP+B)>Y7cujfTL zkd4?=2%z;s)xEoe1_-j8wf@yz1^a-%WBB*h%0}c`7cN8YYqD{?k+9+?slBko90C0Z=Qk7BG&W1HN_PpIV9EfrndM_@qAr zaY<~Q+>iM|zXjNkSz)3*oUX~!FWHiGp`CUI9T`7laD1jE7_4J_YMUjVH`S`A!L-@Q z!L6idDIb%yq+$Wlv5vy->T5O!JtsVGh1qPh+`@?uv)H&~A}M-l-+=xL=?Y)OIVNJi z@N@2NY%rlit)U8Q2n`lntIhYA9rR;U&7b~?pO}FDozt^PWwBN)NjmCEQb+B2a z1nT+DHWUk@xE4I=pVB&etTM)}?R{m!QS+OSFKgjuXu0LUt-N>l)ldGHzwzYvO&$2H z)-QbZE9_Azhg^{EsIeSF7Cy;V$ONc~c#Sz>jU^)O6p@X_(UKU922}sP;(F5Fl2)yT za9B@*uET#12aUwVBRo+0-PZt9AHcZWAIVb(eGbg->D|Kq#};NRGYxuZ&*N5u57-f# zzHB(_AVX&;NWO|@(P}2m$(8pxKZvy58c&mszO&J0aUxl{jq3!xVAhvlKoeJ~7ikXp zBp45SdD8e(cj@&J#a&^xl!XON^q3E*r`2$*RAWz;N_1qocqx{aw^lfYLtRW)5+9W? z1`-epW9Y<>qbqz+{C^LV;2Hi2Z)3#H@VF>|6(>v^95{X>@WH^obA+cTF)?=TlWBLK zhObk)GyG?ESBM+Xpw~u2RR3nc6w2rwL!jIBJikdG43E_%UJ4Vb$;T{bs>zou^(D)E zfQ{E}NE0)^I-V5reqSnEQ?4hyD12nrZMFxk6eBvikM#QI41l%ebolLSSUzzhDOlYq zZ~s4m)~UF5H-bzeNNOpT6a}KfbyfZOlXofHmZqv-9m_>vrL$nx_mB?DCP%`7{0^H* z0J*~Ei{=$K9hnTp{9k2XyYm&l&}D)vwojJGy6n}|f$!-;9s{%TpLWynIx9rfwf|@} zb*L2aQ~N@J;NPm)ji=VQ&cfvXjPZw6SXec8%O{ErYvZE71HQ6BvHII1Ruux54twDq zwJzcImF!7d;cLNHYb;fUsMy4z9)g-LX#l<0y60NnH=Buz*LWq5G-i0JaRd zYkp4@lIuuN&PQ_J6*S?-e3_cE0y3ps<^mcA8<@K*j~t#W8eBkIOfT_4lOw*;#SsN7n{+_UIv)H48vEwHJX!i4T_u!reI6`tlgf1 zOSS}({3~~1!=Mt2!YPRQDrI0$(U0-=HI;+5ymz7Pu3{=Pq%4AxefW>y{l#F8u>6?T)cp@CFBWzb}W3ky| z4>N+ByJV?lti-SEgR!s5ErJ>c=-rOBakpY{Wb>^%OwbqA7a#QfA@2Ipz9`|ca#$K; zpa$2URw*k>`2kXJHMGuYsLglR z!_@bGxuR9J<%C22#i-N~C`HyT{VnaB{*FNbShiM#7q3T5L^?lJFcrg}!)Ki1@nN&Tkp{92#gYz#d}n1^S(6%!-W~IDUdsIxk}C z`EX;ld2?%O6GfKRgpW@M>Y{$Zc6;B0E$IaU0V_*)VBy-P4`FIg@$yM{$kJxA!XMmN zgY@(9npa9NS?Pe1AjpW`m>8Ge->CtwcC;ZjSZT3@AXzbP9X!$;Zb-}w*dhoyb0u%L z(&BACPz~May+wpn_aT0nz7kF;xpde=c0bhxSHd47EAIa!1U=FF?bJDtaiO1zT>tdV zmZrvwY5$eDcLA>~yUGKv>e2O3sY>-yJ-fTQ-Q_o=yB!B6I0QXPRqC!PsU>xF+tBfM zbnlULyROc;KIdMQ)P~rAfvzs|4#6Z~4;d!oFE|j44Q2+$jBywS5;E9eLP!Y70AH9S ze1uFeAp@ShUVE**&p9eJOlGdX_E*~Pvma}(y&nH!wP@gKBB!J>lV8op#E+7AA`&>O zDxg1S!FMKPUvx1n-DKH!bOPPzjQ}KYzoy^mu#={suH#e;q_3zBsLuO`SPC2{H3WQIM3s0~WX!iuFZ%3&p?iuUm=kVEs zrFFn3T64JH!Ns8MfmvIvFb;b_OCmRtquc^~7BMoXxlciL?)5}QOCwoj>|CIfiYN!) zEam7V;>+Aox|_sJQxx{lP8d{ad{2J;1E(ul0kF%NO7;>m^u9m?cxT<7rVr`44Uu-1 z{IlS&|2&x@GQdg2RnX;lC~+xb@GIm#gVxvgjmfetroBYOe&L+UZvMYfEMuP>?+Vnp z)(BBb+d-Rm^X(TDte~K9U*}^B0JMvW&(mC zD_OWVfp`YmG_Zr!yVUIyYSNvtxoog+L0M7FU>6^Ahn^1B2yU)g9j%-KL<#jzs6#EG zGbvo*B_fydjLHc|`Hy&lAM%?sy2ip8JzZ(jJUm2a^p+WcGH0H!B(M-p6vPtH4#K_V z4z*;}8g`%LFHBLti{=_&suBJUwgiVx18mh^%SE~xz4VXys(i2QJt)GuU7Y9o-Bs`G zH|Be)T}sVHE$H5ZAyRA)65T~P)g6?UPnSwK$p~+<3#a$vt+`ArU(l3jjUQp^UeF#E z#x_PMH8brPg(4Q<(9hkbnfQmJ5z17)b@*l2V(y9VPsF_M)^EU5*-#twL)C9@7x-F9daUVJ z5s4tjXZ+9r2q@a5Lvl6{Tjq-`i2H%jIxwnOj5rm}&S@;Y<>j#)(j;cNJFLDq{xXfz zRatPy*jH;*5sdn&swh3-H_mN!+qdu2^U0TKDY<8;(by>)j<_Pw-{(z#hg)-A1Qz>M z0Kgk^T_d6Rp(-o%8osoM0y}oIDgnyeeUZDcXEe9) zX`?Sw6w!5h+~s1AgnN zCZ1&=@SZaseegRMwB*RXV|=`Iick)knKp=+K#AYoK%y|ib3a5enx-cFZ!ym|(3KFLeuH%5&6Si!t=@+st=@-tX0&tcmf6rp4w?;!urOd+e;Joo&1M~A z6Y5CAgGP^84s|t`&7|OzLP``WKxl4^KAji0_;sxz1J$6Y5c=z}OO&g346He2q45;Q zNCX(`NC%w}2JDAa&g>a$S^w{Lo)jh6u>~MaMIOQb@Se})!{Bm> z^6>Q)Vj;7{ya!e#l}xs9<51qby);a+#L}RHt+#WA7aoT)eA zBlPwC9FPV&2((=SWZg!pq2!DmN(<=}R&n=6D|#5yz9v}tU+HI@82mUDTRbHqN^ z$p$Jvq+oAw?!x`DQ+53TaDuOQ*8e5wkP8i1n?7)3rZhOQ z^TKQRl9VcDgnhtDhqpew(0KS8!vgMpUNrzqYI*`KGF%vLb4n!? z{3WmtArN34pADuW!*fmS<-4& zEQtC28fY9xp$5FXK;`(>mw9B8K!Hx}Z=4SVYfaSdQ^b{9-HqXfu?J-a0&vtSR-&oJ zWUDjGq;(R*Ogzn+{93NpknPOYtK%EeH4%TsaRZS4B z*a~3|v!5)REaM`6`hZzPT2w;V(2~l545b%t%DeDru85<EsE(wwWb3c(})_bp7#f9(?*gJaK96Z+-l~`<$r?#;NZTC#vX46EwL)UHJ z76Um?!NcEaETo|{8;U*9dK&Ks-PYnQs}BN@Vcj-V#BD%uQ)MiRMYsWDacC*%J)arz zd=vfY=g%~OqF1q9@sVmU0)kuhr%~=3l*i0gbQ|`?uaq3SZbJnYfck#C|NLhd%Idah zmdu55gc9owdCiD;R$eK67dbi~3RuYmyAOq?Y-A#Z30m({B z-%Dup*y#W*E-epm9o&JF0b3fBl&r_7U*w%(d%&cPmTTy~`skAPaHE?NGZ-6!aWY3sNU#$B&Z@sG@#)3b}+1BrR{$)VdGv772Gyu1> zU4077{;od74``=PIam1g5f?z|d)j#cN2b@`An#*NQf%v!kc53Uoe{*T4Zy9Q z!XhK4iqCRSUR|g2m2qr)9pwvtZfO^I(Od^hIzA+HNIns_WRp-1-8}41hgv`hG`dea<7s*=sEYp124akz{s&W|%i=v&D&qPCYOesqE`l3gX zp&n{o7awgIyBE!hIJpc#t=!vnI_dim!aS4;bo+oTfOD}LQ&Oync=XTk z)@z3B3onHblj20H+L8{Vj+C6`8aL9Ubi9eXg~NKPGX{PKN8f!JDW9o^ivoW)9jiKa zj<$pQ2Bx(dGd|9V(N9&q!Y zbRdczguQTA8OS{Pt?+laMeg)qWOW(GaHQp>6U2n9&_U+L1ANALyLo?`KwIF*~R0Gk{&k<1Y!s~dr=F8aS5x)aMyd!a#EsYOs zWZhC5+@3CiHE-Tb`UvsN=B`!B%)o_!8kXLnz%ffhH~h6kjh5+++zUrPXAJvJhOL82 zOy-Vxt2u}U4rvS2lP*rqDc*CX))DDkJb7U5N4^Xy4m(*p&R}J7wE(p-Y~#l3Oi%Z> zaE^a>FRT^}>{3gvVW>DH7b9;Pp;Wz!{3vHb;BJ<{2sPX(t|zNrKHQ>v=R#ed@Wxb6 zo1HKq8B^Vz5kF4d;1y`dN2v5-*cbE0S3d~CE(u?Dt#k~!tw3GxaXf92f+Od1#{U z=wEnkZ}jiCm2V-yJq)GtCrq&>;rT%-gLdPxDG%zG1iNOmWrFUit;8uUPFbv?LPsXY zsJ_0z9OrsiV|&+jIPZHIw_a3T#r4coLIA=-k7t0f7n&85jGs)!!rzIY8(DIp1MH%$ zQHYxjw&*to?l}$e z)m_CU40lL|PJ~}IB1khV6hip-cRoREqj>lf?NpM2Voz3!aZ&`I)9A0oq==Nf9)SVA z=5K!G+_!xCGw-|d!yojX~Nf{sm?;HtpM={qg zXFV`mv=|5ZJGxt`KvJl>@|bOqAmqdXm8+S26@27XpZ;;%5-Q%l^<}(DqSPp`g8V|G z+KAOT8MM+sT29zP-ikTAVh_=-q`0+mb$FC7_?+*2S!S66u6J~3Ry9Ws$UDzFb$L`9 z*@%yY3A&VuWCG)Y&|9sE(J^KACQ8hpv_t zGY@g!M~82~DGpdRR|-(FHb`px9UfjwRc>&dET*fa%5V@eAN)cMH+oW=q6avX`J(7- zT;xJ(kcTYiO;B<5O0}%EFlvf>luui504ki>SQ>}Tr zCCB>?WPI*#kYtd<>xW*3J?37;gA{0VECY{X6j>tOILu23$OxgAKVW^NYC0=C4xdl=2%XxV?Du7=zL0-S@cQ$mNftvnZ)=O1HzK}!+qgkPD-iy zqPdV`Bl9eZGA6Izq#P`D*D{p+Wdm@G1(L=P2zhO$&SKt2L-JA~t;1=Oe9yh_Zv{5q z6(;>KR$4^(dm^qHOswZ}(B6;PA`I~B{`p%Yj3<$8_WF?UJ0p=3^r-%s1lVwnx!KOP zylheq66?28_vVGI{G%@eT8o8ve|ByLwO4Px1nxx|SFQ0G^-y#-eC%bIz_79sizB{& zT2nRe;2>!IB27AIjs}f={AG}un#3hn%AJly*Im(xAB*`?r461C_M0fLTx)yhqT`LcMm!ta4DXMS~6DckXI=melD9FjQ6$qwkSCXITKXumY;Y$*{2 z8?RGS$%|0=#2zwgKB{}zrcrA5zPjV0kvA9%3|HV`%BfS z4acMYuvw1+e*&RfyJ7zaRxKB}>B&`{1j(4O*4qvC5 zv2IyMopj#tyc$IyMORnfWQAC+w|c|kHv@wZN)!4|zej7kVKb({23nb)u*oD=3YoW!IP@=3c2`aXYlGWyI8A28lo@Ou#IkOHt--K=UA_u$H5ZUp2HVp;0dcxmUxrU&g$9}Fct zd;^Ae_3L(S#+|-4EK$^#hcZr`0j8t6ei^pkCP-O9k~M}I$)f&VI>bFSud;0U|j z@bfP-`&g4L8}`Hd?JF;&3w8Sqk&yfj`T6LPcfO$pto_e>APNDHbX?mk#$;J`+_EDi zW~*OpXoyxP?)FVuS~T>#KcbhlG7B$iCyIuzzek#@iE+z29|+YhTl10rbz2kYcLo~0 znGWvc#q9_gRF0x}zT<7k4&~_f5E~HtX4XV~6{hUyNd8$A&csdJ2i9cN4sEU>?Dj9C zGe~tPRBpT_50Q>1H4=~!zVfpNiB1pub$JX88lFnwc;HzhCozOq71#c5Tf7vS+TFf$JPch3;Z1W-v2GA*128|7WFC2p~(jbg=uR?jlEWZTC=nWZ$9nYh%D>xMEr z>=8&kl{_8J<$Ry9Xz+0@(XC1jXf(?o4D-w3j==(2zJoo-3%4IrjD2&_5`^f5BT>{J z;$D!;rWQEnrscCQv;@&d9G zTU9&VOp+IlG?X$LR*w`42l-d<_4I4~rWX}bSf%E&MMA^-?F}&#Wq~CUiKxoKTRE zcIr_)67{QWr)gOC{NZ5wRIcskEj}J6!Vw_qgp%5jGD1iane>P{)@LDcf)>M-R}xjt z(=WA6R!DbKW~Ijyam^q%-q9NRs1brmcaXbAGvm>qvo;<~0A1>W%ydF$0MkQU%5c6x z$W_gO)S2$;YS^M7PeFgD?DyC77|*)x)8@s!((ja?jHUHtbwIYv<^TCI%JewrxdcpG zFhi#(rVh*Wpo+hRJO`C4wudS2>s~$==Tb#25Rw({EnFw<>r}W)gPzWWd2v7R3)%Cd zIz?zE_-hA*ACLF#by3)c2goN^wzAKOj+IXrUZvQ?cbI>K>1#mA`l(>SbW@AjQ#@La zgjpGu&k4UHg3k1#_38BD0~XOl!r)Ip?vlgHja#^i$PRT?5drDvL!6ynDMI5dF7aBc_jb53&@lJ5KxY|oz zavxZ`RFC?S{^2(5c6c;`@b?<6llQkLd%Y#cRCTyY*P}Jbu)PH~IK48CHB9RbmTF|_ z*1+ps=y%EYFw+J9tOYkcsG@sEp4Ef(Kjv%PNQ*VHpv{tA?Vwc3xQZJ90-OSgmVY~d8-S|^L^+7=y340jJWty+gC9X1wKSx)o>mSTbtj6n8|$*6l24$s;zU> zR_11DJJMla_At1_#iM=PWF{-Sy`01J`_1P8Dt~Pxq|4)25E_%fg5Na)lmaLNn?ykYuoS1eEpywjERhYC`1EYw zdke&Hsmg&f7W_*w+V%-Y*+T)0#5$Dc7-hmJr~v*M=q}4lz)&rQB6~n)SpMmB+u(;^18vks%P!%5I3l=WB^Vi;L|Eh=3!I%Q;g@ zXdn89WxNX<$pVgQvh!jB8hXyIi@OXP>n`j%sge6b;GI5d3HPphA9c8eU4P**+&Go` zHTe0^eK;TbJBB-w&oog2c@`6+p9Ey8pB6ANjxsR+16ik|tfkxA|Jph#nn8 zXuIXjJezN~hkXRF!YieYB6(CR$K@4qJ`PN!JZb=g|Q~A3HhtD z4Jts2T(`#kubwCm!8NL;jcy6SZ$wEbKwdCIsglDwH4h7v1loYr!H@lLdE<~yZ-^e=yA6A%fyyv65W!@GA$PO&@Lf0{^-rT4QgGLP)|c+WRQY-hwQfYU-W?r=W5HKV7Bx76 zSfCnp_xDivCpK>G8i}Iq@Yq1LdpSZ)XEZd#jD(audn7#+E&3=5v9v$Lv_57k*U)KK z|9TbZU_B{m7lzjlZEsrD^R3v5fF3qE1#ce~NsrO^wwK69;=&I3H`6<+vK*kS9bEp} z+v?9zZshp@?P=6(u#NaNK)gf7LDMm00WA7i$(Zt?E~Ba!8cX;_Shh(_Lsb2AO`flK z(PlP|;Ncxh`Nrs4Y0IB%ZMELbz?0U5s{psS4yhdC`xF5Zbcs+U8uXo+P;XcE@{|oYUhnilH^gH4|Obx@;gf2w? z*v$zJT;<<*7k0)Ce}V4gDSt?}KWkj~)Et3u3&)>89;Ra4M%DY0snBQr<@MplO6GV? zNNbFF{Fk|l(?R>sgVYxUai7{JBHnubn!3+z_wjgVmuBX_1Jj%RTI_$ihYk%Or~pVsK;C|SJ=)h zV3Cx>rL}mT=)kOQnSXDaf4`*v-Y{i0Oqq?BRQD>ztfBx6ECp~3YB?k>GC_8?fls)= zV)lbj4M(V#EuUKn)@a?l7(B$CyqT_fo;i|4K2Y%9n=b&gao3_)M=ntrK_Png?h!Ww z4SNpS)i_)(LDq3#HAGLj>>X3s2R}3c%$9~Innz1y<+ifPjg>AU_n9n4tp$M)M4~e} z#E)jn=B5ntO|Uq6*%2ERO18QkYPqyeIUhs_@t<7kh(8P~j9{V}ig-*wLc1n64y6 z7_gQ`SwKc}d>(QA>h%ztW70i*JWZI;2Eerngqv_s-P3Nw>rvdJE_bi!yjV=hauujG z(O5YT%%CYsi?R%N;9Un6WJb$*%C!hsgIOm;Uyu#TJZXlw2^l@GI}z^PxNigGBcUc! zl-rQ1+`~mzV>6xX<=NU~w(U+C+50e9)E|0p#;U6@KOdkbRHF)^A8n@wBJ8AgsMY?^ zN91jCN%rVNx6-!l9~^0WGnGs_gkTmzn>nhrk>IzM(Wt%oI3(gJx7)`JA&CCgDUv%F zF7sNN7!mAg{XkSs2UEGf_7hnIgr>_lTuMF?et9WDSU({bUpR@S25D{j5c-|P5iX{i zd2iEgeK3acgA_}8W^I8e&%2%9Rwh1of9d{l_rS2%bEEtIeS3ncYaBf)Ja7PVx{ww= zwp0x1#f`z0*${i4OUx!37Wx6dBrC(g02CAmwgWAn+rysxCZsky7CYj@HyUqNf>1N} z4r4>BMckdFTpE@rGlY1bj^htRhBPt=(i5OXs;PH~F3a*Qsuji!W5CET=AQQD=gILQ zG7-`u8@hYmfT47Y?#7j@^LQo2MBr@aMdse^upPX;6niA)OaaAi$^Zws{Teb@Fx9s- z-WuJGtG#5cR97&+r}d5jBP_iiiga}bPJ$IKos_R$c0<1jJktsQdWf1sKMNjRCWI)b zJZWV|lw=3rJO`1@7#l^c6m=0pcmJKyO2Puy?szOQ=preRI3@B@q)x!{4s!7(c;+r7 zFLfcT3Z_yk2G!Nj9e&ujS)jkEKTI2LEMo|5Y}n#W>u6x3!_E8NXvAl!jE4%F%rf3T zik>QvatyB)PU1k}Z<`)lk2dzvtjoFBSchIuLZ45BV`Er8E5Gw`Bw}@-1eRR0R@-!j z5T4T!9Jnk>Yxb1iQIxrK%k1~#EeRA3j1V4Z^|WWLhslH0f9@_EplS^hsViLz2kR2l zTd?Jqra!%&7oCWT6cDi7l~!b1mRP@*>rU{HQMe3j3@eEKAQ}b0sohal5!}5jo_z() z7h456IPAAyM5}vcKM`wlA@6OkS%?NcH(+AAjgjNa%l?%@3|_j0AcAB@%T_qnyFWoE z?qz`Ri8R=5{R4TpShFVJlGdT#ns+ceH21n|87THSLA60$;?oukWV`^$Na{J+N3@Is~UK>86L$k$g2V<*=W z3~yEL@KQZrso8w$PgTm&X%By6t()^x*RQ;j!{){I*e5xA0ihT9tr^?&KE#Cr-$bMJ zQBh?DPv>T!9Rbun7$l_5=EYO_5Uej1peo9Lb`G+{^%a2VONH_~T{kEZo$CGE$=kHJ z-^_}nB7N5|EeFf_?G!JI6e-K1NsR^814xvP+5M?uCZNIgp<1tSsa`YcB?^9{bcD^^ zXvt<6>ToR<&wGH$V1-{r1gQ{8aox55rGe*s-TZ=qk4a#3*haB>Claf7@4{TvHKBnM zY1Z=)56L3|$}f!XOQxu4=2mf-cA)B$eF9}!K=4eYe=oYuziby@$Z#(7r=uOO_9Jhj zxmQCgy1T;Zf4@I-w8grahn$-uISGZjqq1kiG5`$*)CG!{RDyJFJPA)m-^h~tUj2jw zBaaq*R}=F7J>i6G+yx;>V>>z}hy0ZAmDM>UvjW*Kzw_TMk9_IJXMd#oy&wK(zxKZ! zfD4b;aL@@z*vcUx0~{R2%Opc5eYy~Gc<}&|fe$e^*HM+nDrJTh$C#L4BqIqPmEVm( z(=oz1+Bk9#i@w5c;+zMx`grT+!V*B_E*Gn;XMgwJ>R#GoD=a!bN1RxIu>N{2csea6KZvZ);=ckbYyt8U0 z2C;e9u` z5!cDmun&eWPaC`*R5n#a%nX(xk&8k}#?2gX67sfKpCw*T#p2#vn=F~oyyRy7OLjqd zYnYMUQC%-=Y~gHSTqDOA{_cTrS2?C3M;S&p8|K4u(H%T6 z3RYQl*`X>1aWr9N-+LGP?2E(^bCd}i)kXoF9BOV(D7M#kc@}PuIP8sC7sZZ>1L#21K$0i&;^cD%=K&kx zm$JKc!$+EiQi5P_^bY6kW}m2S-}jSkkpX<;U2v4KM5J!4JKLzd&k&6eWY*nD!(K0p z#yW_gkk7X0)<9$E#GR8Z#6WVr{{9~MIAi3Z0>z=ROQhcsZpwm8A8v_Ul0yc>!TSiY z8=aC{!ku`LO^g5`ZS=)B^fk02MFE9xQs5`%5fVP|OZt#(7VJ<|a6>|NJ!i*)!=Ep@ zqDwLwK`h`=k)+{x)P8szWjt96Cu*E0%AGkM`dwr$qVwoOtSfhTFrG_-8|mI%z(cc} zMOvXkyR{2?|6Sygs+D(b)}-f)1!LI6T<6ImU30JZVjG70&90lj&|v==b-u{ec5My% zE%+R1XhpS)^rYzXB!h!(kuK-M_BwC?d%dGFT5d{h;85StVn%4dob!|JY&aI+2ARF` zHi!2$a76A~ztxTBiz;05QgfwO!78&ZaY0672O9p4>x?Lc5>j~~T&bnu3L%YB72IIo z?!MwLHLRFP<*L@pad!*ny7*IrNq8(?z{{Rrc_{kksy(j0Wy*H$eLcG3lSj(-4fpif z7&2cxzdGY?*MW&7n@RU3D6aCir9T$}>HYpgVvLS!3O4l_tZ)FJP7c@{MMhMJ9@7e% z`5SlPo;Ky4PPg?sBI?>UHj)yUe#IuXT9LusccJT+X?16tJLY0i13!0IlF%-d?C{u# zT_fH=@^>Dr;}YL^h>=Ki2txLZzQtY_X0WA>wbDw-_GjODNcIig3+TBK%1SxVF}qhT z=TwjlZ1^By5_;_zFHEt;%7HEg^#cAsbGHH!ze?_;&)k0? z<8~mg%K!OfrKbCa*eiaF3%U1-8VspTavuR5;DzkXBl;wb;{}5(Hj*vi!VpAoYRRN`vnbs^0mynf z?aV(N%ymYQ(+EN2Ayvj`h@ln497A0En8FWrH)7y|Lj;cLQV2 z`B;=kZ8Fkl)shTcUlHSc)MtoUsany|b5{jnan3S&AQw?wq6t506GF`W^*Nlly)9vN zlA@R^@x#_=^kRkvhGEC0h%IoyW<1vgzb(!1XAZxQ0{OZ9nT&*j-U>d=>DK(vou8{| z2AGU#2gu1(zIFIuxE6BdNA=Cg`-Z#;|(FkF^%2 z=Qj)8rNX{3?+dN6l=X*VPZ&}^fQV$emk&EQ0%>SBk1F@CA0}N^eH*b{2nX}T{_yW7 zEztO=88pK#u}PZlUiv-M0`cRWZb_cU0@Z^IS;)!JrUPR#5;nvL6$|d3=moIEh@L&s z@+&}i&ItAhaT3U`a76sp;QcmP6c`*VKuYFYkH|nS9^chw*n=!Dz>fxjSnW;vV^%gn7VqL`JxI{q-J>Y(eFqLg*Q`ORAIy+-veFdt5Jp0?^MvZJ{>}quZtMxD5CfuQOQ+T ziL|n^S$6XGTcL{43qA{*x{7Qr3pSlYV z0Vx9UGTn6sp2HFzcPub*8@X@WCjRNC4u!=}gvDP1+8qyf%#>M!OH>r$5@gK13Wk}n zXdm`{g0Y>v(anYfD-b%O?G|Yg3x&;$B_JiZ`$`nLl&0AQC(=fwU z&zn+%0k}J~Z-YY`Ad5W|g>rr*DvPhg4!BNDgNhYSUR>p@Zc!f_KqfRSIc7FdLpE9Z?z6tjk@{C&@U-n-d3d>%omZj*xz-a$w_4_n)r|+w2)y!HnglK1JxT#%N znN3y-UhbLh2Fb@h7gdS&+3YaG`S|U+J?mO(kBvm}rq^@F@j~=#AiN*gBXLf)1_U1j z_wv_2aKfglMtFhV4)HIVTTm&b;8<0;C!)bGaA?kEvP8wY{dBhr4`t25-@kD4;yfG{ z_U;-e<$?)}zwY%>1)%F1l*{{8)O_$mm74HgU+`M@xTkZ`N}C7bPE*cgy6%>@Eh;5M z5)>CbQ(M$AiSZqDzP8|VXr2`}dfb%VOl$8{(;S&1x(&X%O0mpnLe-hAge-Y4vmwy6 z1c2?*X*>W>Tp|$^nhXMEwe~w>d)!P_m>XYokNSd)X9jv8@PEab*)HooXCkh{)_ZZe zH^t@D3h(}%T!<^f-j&x!^Lk0)ya#ZKJ2NU)%`m;vN&t+$9iiIwO-=N1Qb(gn6Q-eBGO8 zJSYdv9eBkuo01ByOkv&71}Non1mhAQz}3I@t6kI$?|4v(?ySar;Nz7{<(+N(w%YYAcZ}T*__95XCEcQdQHTT)j=xwhDUZUk zGv9d5eB8=hR!Y39e%g-PK52^z-x?P>V+$=5dB^SiE7_pfj`#8jTad$R#f_Z}%D5q! z&j?FCW=pz*2=7C;PB+s#H_{Cta<%Wfb5Sjnc2V5i9luM8)~&!%yIb7rX7q5Ff6V4X z1Ls}|r?%n1h#Y38Q!x=YGmFSc8#{e>vB8hQvUZBh$W&<)-xRhG1|k9=$9NN)!S&Lu zW@(N-@@MmG@YcqoaCLeqx;vWs1H1g@%UTx%c+|OSm*?UFX~E$v%Xm{i6cmL}hd`FV zh=d%Ln>YBiTa(kks0!~EPq7lAYkBd~Bsgg{Uukn2fO?ECYl>|L;)J+G?RyTKW)jkZ z)sfMMYfCO`@XB~fAB-#Dwe1mN;^L#G_~57~t-BBw#oaxXJ06I6pPTOegzg$=q7!(z zQXDw``w|PCucy=PD_aBn>pmr~lSTzNirSKwOv$wro(KHcf4Yl*RBK#lssZC}rbVRN zC$2^P+#{|-m5}bF>|Ws+^mXrnFaqHw%HhnT6p{aUEhZZq~R9HbZdXAnIx5!(JPgEX#Cb1^FrT z`x9f%xZbI#9?jzp^K43i_bmV}^^)x!HV{^Tzk0p22m7bey7G7Uh^|~p_8Ny0H<29d z)CyhS@hUxNN@Q!@!LWlOqaoX*G+!k*7AM`w_1s#tNZPToE5dkk1m+BwqqQvUkVsFJ zuiXs2@Ua22?I$Wt5{3Qgee&XLZkP-p(CLe0rn9}|{ym`HTW+L2NJ3l-Bdddga~B-9F77{drTgz^631%yNhYE7?6jHiu4B(DB7tas>nVjx6G*f%Ijm6Y<3Z^G+_y2I zH4TE+OX%@Dsc)L^WGvmxLywz+Wck>9n*lX(qy)qHG+)Gm>pVFa6g#r{=feFd{4>~6 zzI9L2E}){Y?V2SYT88#~Snh08ZnzSvcfb-;Q1}uc;QJ=zh=6EhoiV{k!+E`&FuCFwU4-f)H7IaO~QF7j)ezA2(&dAZ@2z z2*5ToZjV7b%{=2`ADK$9Nr|`oXzilbV%nNnb!HqB?bv<-o03`Zo2f90V<~94vg&5AoUT{VnLJ{KdJ`QB~&#e z@E^SalYYOqy_|>EMYj54+DmKL)ss=NS}OGVs1V@H>u@If{UYBKF04rxqBU!~Fyl~P zCu$9htJn>y-IkNQ&n7OQVLkcm9t#t1av0PJNuKO<<}$X<#O+}12;0boh`d$cMFE|X zA4(~LA(qM&C7sUA+`SHa>-jJpkZ}^*!{=8Bw`$3q&a`9gc^<0!SVz>KeEf;WVJm-4 z;{!b`A4P_Wt0_q)(MPxKNX32Re)RY^)dH<(5f!eZlPc^$IdYh(w-0dA z&9a;Epxn+DPRqp*ViT^pg+vEHC>?Xi4~M1iFAUMIcy{r6v#jdbth;`ZDjM9SVjth#w1v6qEOO*bqE;<1aTw909MDtErHNqS(T-j+l|@)wSB$ zIUdwla!;`|));_GIc*X>kmMXQJuC4Z)t5%~gN|zx zLPS4sSdjByy?NwiZB8vYsy5{xI4tHBj8)gEma&kMp7@eU?aFdKu(m+vBQV@$mh|W& z)PN&4p(Hw;a%rsoH2LCo_S3U`Sf&N}2T2?=`0vO6=;4np{Il=;Ncv^jH7%KYwELt+OBb@Ke{ybIAq2xnW%3K;jnh1BXMcO1(Migw_k#^AAM# z&tWZRTq`0#3GW?UVO{1r;4v{-6ct!4s*@B2jOuGRGTA|@<*uPG84(Nsb{ilSHOY~{ z6NP7YE*oeX$7^N~I!$Mze6KIn9Quv=Zqbul3_C-Vm-^$yz;NL0s2|Te9O*L;M(3`^ zu-Qzf8fJ`}M(E=k=f9>&`kgdw_^;pXP;5hErlC1&HNSHc6-#WAO{IfiRz_M1a!ktr zd*TNUSHHn!*{P_n_}?E6wzyP`zQ4Zi-#uKNe2Bs%pIl$-f8bhgpjrS#0J=_$0nq?| zK;g(Vl7ogLn~>(Is&BD&Wg$b!#MGYfK~b|KCbS-jba+}m`GC-P@gn1m4hSnie%N6S z{)D?4{5P2}d2FezZMdczMoDo#cjW?W#)u2x2ph!5Ee4`<$_s}d zz4jY_?cDXBJof9q^V{v4r#*QB4a-a9p#`tqGA2(PR`#Q>MCc#}SEH89?HUK=`wh9p zD<;hhfRBG4GGPPYj^Iu(v&`Bucq`SiZ^(VPNA~TsxE!G#buj$6g5uys@u6A=X){u4 zi$r{i0Yxj5^m=F~i#{PPzGEw6k2&P?%-lgaSY!A$z@#np_~I_OHc zoI@%33l`(&I8tdZ*-i^aZE7d~x~l%iPrOf`8fBd9RTd}etDL4j$d{TOJw_erqeo1Cbm zhAlEn(?zs`O~)M)vHIjI_}a!$*K-K@KzZt4JL)T938?hbuSk4s3oYG*==#6BBJsf& zdczWH=w1GRZyg%`yg*fk_-`JG5%e<)T=v94jyR8aaf1-zPEZHkk>y#tVAG$?RzdvV z>20I9KH~X_{HSaOrkBlM!39?U{CsgqGzcyef-^Ko+P6a@SB|ipCs_maGMM$lnFH50 zepaAK4_tba{XRwt`P3`0lR$3h_!r5DVKT^7acRA~I?z}iD`{__+!{lnsRamRyOk3X zLj7-6`#&sj{v-{)n)IR3GeP2F97E!mopD8Fqoxqe?q)i8W|*icv2V)A=ERLKR@vZYLvA>uEIYj6;apDI(arX{{mFKbmqw~+vmka10=PwvOa{P;G2r3?I~@QQswiUmJL*f&b^7V(<|1YRY4%s{KgWI1 z184y}A8rZD_HBDDGSv_6Ch+S$ z$L4jE$cdM2ZEV7$`bqfO{kd0IvTf2DA|XO|HNnG)MJ(wF@Uw@Bk^luXqgM+FcEpz~ z`YZ}BdpmQBc%|Ph^A0{XfTP&37%cRAP)DmuOB*+Qe=us;1!aw|uzAZ42aGXqNhrWg zm+PJ#3@*CPaAU)wmkXq5doWo(YY0EA$O6KQo;eUoBidpjVS;guaakX~B77hC_!W94 zp!5!*9>=*zbD)AtTmsN`(Z0MAXk{_dA5KIyK6ZQzU3OE38v;E2|#J#(by2~(GLke;KH3~`2nq#OK zWczEmmr>j1uXqWR2)kCR7#IgzVx93%aZIFfM&U7xNzq3oOiizc2qYY(&mjNNkpMCW z?SIXFjf})dZ7Pbik*OF04+%OD=_X7lP7C4>9oN>%TL5s;Q&p88@^))OF*IWfXDP6K;4e}IA|-%BL3hCVncrY{)sRXu$P1Uqh{wSn)G-j zH7rj9o5E1^y1gjX?IQ)=bNeR)IFE(AeE#k4u#nUP5bo2f?LbQzGG83K4WgNz@KXz~ zP!ivK)BccZy}4Df-4YX1ZyYQ_wY*pz5z#|szU${@_a|%D^He!!4JRNxTRWbiS9e%; zc^c?QWS?t$a!6yF+oe|xSoSrnWqaUAu*en?Zc5I%%H zq=)w83Q#v{Qu%em;>;p{@mAUvD8~IV4N9ckA2Z#Ja)HE}3P_asuniW(&IWYFRhmir zMG6xBPPAKL3JkyT@ravn)0Ack+OPY@v9qWsg*=#p-+ToxWRn`p^h?M%;Qzb>&mPhJ za)`Vcw!4rVHecjGG+8*dC+!In9sxQK-L5Fnrj^#dRC zuMVH%MvAhZB71wo7HL6|qdMjwoq9YT_Nb9QjL8mDFc!qLak+}%z@TLFlG*V%-)WAvWBuMGSls9JU%JA|k`5@`oFAu*TX zzVTz{r_j?@8Fy)i#-@8fcm7S)p-Zhkby=#2MjXX>hMZ}k3~vgkPNq{ftnWU**-qLX zcEBZag#ZrQJafX|xD*i>I|E0@q37u2&u0rdCWRQw8=x0~*Q7yvKj$K1g;VX{EXPlw15|R7YvCCTRn46`~fH$q@+c{-2iBnMOg0xEn(Oh$$J@G zP25uTnoN{IT*&`c~bH7OV8w5XA9*JdeHJ6Y(KEjiS}$ro%zWT7g7R!mc-1U z7DPg0ALC+j!L-YjLl)ulTor`iU^1I=P+$!?4#$Jph&T{M=SDYECW66lryR9wuWL~j z>ba%tl2SEu8Ct6vKa!1@uo)X?lztE6Kxgueq??fqm6&+nNHX^lE`Dauah@v?Gy}LS zR&w8jyeP*6obBazG=fHF(gz2V3>J~8JM*%mR=2a@q`2G+Vq=g3)TGZ32Vpvg%$;RV zIn%Qw>5<~O1Ug4*yCV+{faOL|4O>Dre)%32#@J<|-O&!Ll2tw!2a#e96=W1L zZn5R(SE9jaso3*(;Z~sK31V#B+atDLjFP6_)}<;>R{0cgM+p04cZxZWz8iX#Mx6=$ zqNBd)AFh4{dP&B>6ROprF(gHrX#AYiQKw!``|Ni{tQh?JWu|}|fw}*0c)BL2b%D_I zFWCx!F5`JZ-R~CwV>rP)FzSSj;<9!x2L>d_qu*id58{pF*+(A`VH(TmhlC^#Fb$B( zXh=CQg#93gj?fA|ek++o1n><7h$J;lwh^X`p81l)_d2`(pe5{+Fswg$1qJm%dTeV% zQZ5V_zTeMSPeKZFD(yRlXU{sMS}Y^E^D#3$wc)_20G~g7tv%qk589eMejxn&iKaag z?xHdO*L=1ZMsvg1WaZdGEm-);cu=77)kz8>m5khjk#JeGZQI|nTs$COLb(t56aQjf z_<&!Y*$hH}aZP^7eSseiv}((FKkwyh-Lzs!!)lVf_wWI%MYrjjp(z@I6Tx3f+(LE#&1sPNm<& z1dlE-vtBOkdGJx3qWcsAK?7;dRHOxXc@WA{OuLTULk37fG`fks3ho=kvdiak)nsip zFRtQiKrMSIbpg<-iYMxmpVYUCw80YPAQAf2M7KnXX_*3mr@To{#7*F^Bc}uYoeC!h z)NPJqTiq)xLBni}vXjz!erG`dxNgF`mxgA;)wnl<@LL>3Kt;fDyg3ECCn-p*v`x}>dDjEsP|nwsX_D`pHf0&n5M)%Jk3yuL zG{uaVM@|R(kg@QEX~5}wQFzz-SZEZEz(zB86~WLZ?!igBPir-8RW0cL{vrKVLnfn7 z8m%riY?Ln?5C-6s>~L@L;A}uxj-``46H^ z-KFSLA)dsMfZSfjqGP_wm92iyy_F#(H+=lN`6T;4i3Am~g_z*vBSTf)|TCjHJA&`!Mj3t6 z(u#GS;Zq7E;H&V-1pgh7IvJkm-x}e_O8JHtm2!+i5W-S|*QZ~@*xdpPL78+Y2H~L~ zHE|Hd4W{+CZe9QCBVY9=PksA^FS-7SkNl0FKt@f*2w(NiNNsvbvI8KBr~E6Qj?PA! zfb;^s;FfsujM*G8+R+I!#cR0(?gduuJzjH1rvNM+@D%71(^|qD){_({>dyoX^NynS z#eI<;gKLFY1Bn-_PW5A>b&bucHAzL`*SLL;NfQ9bPU8^YM-Dyj(iiVPl!t9Q@Slah zgLdC|&y3e*0t@vXzl;a`$3H<`YQmG0!1CmLZB4@n?Qhw@;xfJ`XnyCwP{<(ccsKb>!FBs%kOvN;TE^YLuvtH6~+hpAV%aRyH(7 zM{;ZXB~kFRtXNR7C7C6i?rM<~621*Ltm-4UivVHU9l4iM6Zg(N z#}|`36o_4Kp%p5o^RjXy*`7)@^^7ex=l-_|Mq((e9`OsYGJ^)J&vgguFs({Lj@tRe zVDxg-4*7-klX*a9ZDFv>>0nFjUI#oXgp{0+M7pwP<0yES{g_-nyY3c4P|nJ!j zqBTz&@E9zE60l zbd*u!sdOAilXjj<3W!V-DnZ$pm-Cb&9(I-PfX5X^Gq<8yeE*4BgWi9tec)<{3KzfB zH1CB1o%^x3MWkSf(xqp9lCbXj5HO{`6u|Y$kMdK5kx1^9}v!JU?9{ru3du-kx^4gX5U z9Fj=CBQT0=z(8^edcv0>bAxWXO))SbXI$%c(j^EHKb7-Sa9lGy@+zdW<%_$JZcjVf z((Zz&!ejlM)>_j=-e=3(Zcr665z^~s4#XZ{sZ_Y&PcQfDYc{3Og=L2Rc0K*b) zs-EAKXHmBQq@jUO$1uXWy2og$yccvyo9CP#ihF56d~ht4BD}GRbX?v-(oYM~S&xUQ z=)VZ*G#{O3%e0tDS0Pa44YX%{UI}A0^X0dfx9BHZxx^voN^Ayy8L8bdcZRq1>97|iS0SK}V}HpJ z4$xs7SyL8(sIsG2%4T&lwGrs0t40}Bh)$Ji6^XfMPe>O`MZ;U2xkD=u#^a#L_GK@TML}SAtu_e z2;P(mvDRlB=b4qB+TtW(Xt?l=h3IHD**Jz;vsN1Y26FrXD{C~cvw_>l%3L|?4nA83 z7_vT>frZ|DrgK2QQ9r$TzWST{5Ak}|c_y*k9~A7WnY_r0?;go;mpaydIiF!)DUoMC zUC%#B9i(`0DPo;n@=w=^f2waoTVM}ac9EC->!bv(&s+?{NV2B5znovU+U+{mB@Sau zMs!M%HaR|PZyO(Rfu#MEoqpKMwUX?hlovbw+Xq537H~mYPsl2jmHWwNdd(X$dYk(Htzc%n%7a43le)B2!$Z>! zarBsj#w!ge!ATWhUA?6Epy^Yn_WSoc+ zKtCqXiEuS>RV}ZELDIQ#pRJFmpe`}^QQc8rmsB*t`-`e7=98Wa4nu6Mm5&FXxRgfH z_476Dh3ZHB1$|%dt`zRgb=h+-?1$(mnlS9)DK+p#fWxU~HY7sPr$hm9yaSEk`I?TK zsLYrz%U(Wm5?D;icJs!C&Fw7qEuir@R;oKJ)$odTG0&P9Lh8OKLc{WtVgDj87SJ`1 zRG~%S93-QxY6iJZ$fbbU7J2A|Zd*k@Kr>5XVBAjm(82Isn^qilj%zKvTwSI1XedW` zu!Sb=B)gTDH-seaVT`)fd%SzMwi*3K^FpHy8OtFvmH?v9EmWBfJ2}Unf9=8WQgRf* zT~>HFP)01vDEe#8fGy5OOA8=re>_fj!X(Ue3$DV3HQ+2n*5)G3tVUj^pQD%+h6I*|@J@ zX334{*=XWi(k)9PwAr~bH!UBmX_*}<%N#3tjqP}ljCOmEH>5vtpfZ}K0Ung8!@Ibo-92S49K zT+V&n^hoI4aZ)@y~Jt%trG-_oGfkga+DvA0(?r}zZk@tEF6XuCK zLL34Swhof&S5RT%F$gdMdjYEuA_FhA%ssJ&`LKkNhW9#vRUI*SI{L0tlHnudkbP+Q zTmgGwy^PlJooL*XC!`UBkAOO;{hm@Hig zw8CUF=Lj&cf1u2QEb_=6mXJjbsg!lnW51fboF-{FG>1zZY&Cubw%p4KQ_wY!&sLtIfZrY~MN4TWt&H z>kF7B=*z)FHuYDZ-~qGA8({QAIp^wX*-txDt!lH+@mcJ2dTDKeQ)a1f{ovknuMfzx z%jk}T$!YO14bBqBGVtm!x-FN02&?bDTl$3}{fqB>>vFPY;6=yf2sIMLaWK8X05ThF zOY!aZkdm&HU^zm1wkZa-uX&tU_AaY`ZByDz2HuqO0721VUSx^1?n`dM$CBWIz2 zcia=k!JSf`gcN!Iz&&HxwlubucD+o4xNzA$_8{*oy;Cf!S#NZ+DMx(KHKX6_S|Eiq zsHp;v6|mxD1OWZ46WAB1>mklK#Wwzi2o)eKgWiJ4H|`O;X69!h%R@e$(lmI9<-=lf z5SrRVZ6de%Eqg*gw_{W$>kPZ}O!#8&8qZn-1+-u=3th0IrZP>T44B0p9SOarNDMno z)NyVP^!?Z64UlL39}tDMs+5_J?**mbb}Xd5?!rp*`{0HW+Ju$dC zs_ASmH`4M3To@)W9HQ=M%$>5s8)*sIT%lT1dC!PZIdN`~IHpjwPAkxclpNC}El14M z`e37{7FYw+cDM&SN}2SDe^ytJU@LAWo82{t5%Nw1^N-iMTN3LF)Rcn4zu;9&2Y9V- z^?H^BLc*F=-Q7lYu?iLehkmuYrozbX&EW=ET$cNy-Z6+_K+wJ`va>wm%fSYIe2*}g z_ophCf|?pJfw|HH$}H!;v~1;YOP|!KRx25DAidD?MppPf1@fpyrK@gF z%rgM0>Z&PqIqyRf&7C7oGaBeLcW*0DXuE$vkqKJ_Se797yyVVrCcWAcXKG6fS691R zLH45Sx|;2U9*gi+kbFRd+9_Y_GgqJVAxlE-dbq#^h|=<)Euv6V%egJ~@p}+hIJQ3H zSu==dyEHr_U=~JQ1VkjDZispZ*aw9`ZvM|4qN9WmT6fTv=cG*lXG2}z1CsS@-vDC4 zpJ6$E)&fA`YPU@aB>2Wp?_=ws$!;+N3K4?(I_48^b<1`x$+Yq~yjd^ZLK5X=5bWhF&AJ{jx-CrWo9Ku^c?x6c7f2R# zAuV*B;jq0%t2|q#H~{dDpUsOWfTiNmn@5)my_0Z?-q7-r6O7x6kM_YjIECYedKXVp zFHbsf0uYQ8qeeA0*mYR6PhhcwW@4;?R4@{ebdv?<^~#7wz2t2sv}8Of z>7ek7B#TqdsN1Doz|h-&;(#A5Z%88_46ph$YQt`}I`%m;+!IwmQ$7>&v?vvr>$ zX*$>A31L zrkXOQ4ZC(L@5%8$8l(s=qPi+GGZ(9TMI4GNH>Mg*Q%AZgH5Edg3$m12m3lXfv_Y%LkfP`a4PA zbSoAPiJz@dOF2sT?}ab^(4LRAKK9hdzwh^d@Bc5Kem)q&&M)2LLD^=Ju5dwE?31Irf1^KEslA(b`Xja$ zve)+&Z24g#6fg~Q_X5gewl+y9MNP=e#bWg#%4bp6rfL^%L~T?LcyYhKbPJh-4Tv#3v!4@r4> zN*|Nqhf=xYVY15G#w5c^=8oA!Ez47LGj;D}nww|)9R_A#>q&R<`=JLnwG3RDghJ$v zUaCjwZCRs8+83_mqSTH-PF=I17vWAzc`j%ZT^0rYNN%!c9r?;`8cq!(J^yGNTWSy=%WyhOM%R?1NYwMp>mx;A4ngOm*{ zwAF5P1vE!X!M)dNsW^?Q$IteC)tm|<9z33E#CtoK(4DU<4-auyHWtY|2xXtbV35p8 z?no9N*5cc!sV0Y0?IAZ_Ii@RLu;m6_It^; z;~oi<6L!9O{dN$aCQEu8!-Z49snev=Y3YDHaxaAka**D`gb+9VP9jwVVa;ej(ankJcC4aR?`>b&P0&-a!f*ek19N-U+X*-*o5x^$pKJ zZr7LJ^_%ct-Q&d#s_URwZ_XJoB$0po>sa7cGn_^#NZnBW50UEos=E=}#6RD{t5%fw zh2MqR!$8yTQtffErW*4duJq@kxQLJW(h=hn^zmiU96T7-y5Dv@F2#)|rs**3tid=b z#cU{y_{5xyw^?1GqrMQUEj$-ZkIiC@1vmoLO(sU4Js9^9h~j|*xzIAw3E5&QhpuF) z2>XJ~s+YmnNbc)J{E-N_B0a8C7I^u$m3`ZfgcRw9l7E1NmLL7l72Jww z{L?I)W^uCFIBZ`G}|x5vU|E0;$BB&G@Zea1#HRz4GH^Fmk*st z{&|~^(q%APu`Se>ux&h4De=@W!~JaAX)a~k+Ch-cQgN7z`$@&$q(yftbAJmBF9RYq z>3ECnvJ2t7r_q25jIOS2cZ%HcEEFAr&t<7fv>o*(=lOWZP;iq(WoW0KwRggf^lv=4 zJwg#a2TWr6!#~?lN;Y*}D{wUK--CP$SA{LG zJo@Rtkiyf{&+Vx(xT+R|D}{oOr^Sb(aHALNt2Ee+Jy>5_e9wNlj+^ksA#&@W=>5q( zCKt3eB-+b5fkBuF-`Fw5tkG14s4bzq(EiSceecLFo(-)!;iXuSch;GD6K8-n{<8Kp zj=$|)i#l}(JKEKq^kvZ@&W==jjU=;w9x*Jw%9hxbdy3SDyATHZH)pZ|LYY6mI2Z}$ z(w#1N@iM^_#rLoz*GMy%mIW@1u_J%yB%( zWv51vu}%OGzPSLdbQ41L zkS#@rY9$A=<(vzPMV>-GI{=0*gZnmGFRy>%FmBZ$3-IdT|~4jq837Bvy*m zAVKl!fRE{iPg&NY>Qi@b%ZukG(W$^_UfCMsMzU3t*v(8L{T>zwPh&J5u$8e`;eu8u z82>p2{#1NA=<wy1vMd|-^Heu%iTBa@kR{*>evx#|A=oNuCO0JIKkv?C$Ww^ z>63z^OcCOAs84Zwy)KhU86it`+qZ8d?rGzA5p{|5oEQ5rNGWeg!j^DpvjjmbZq{B>Ocrewg{-(wb^C{Jhz{6gj*Lq{bgH_YB^%u~X<}?X z{T`AzRpHK#kCM~X@{MvHC?>+7a0f66a~H5aEXdda7yRV=Tdlv?{0>9=fVg5K@@?IV z?9}_sZmn%f)ka5UM~X2C4)OH+VLwU|xXQF52B{o)pis8nnB0IE_N2DtBy0altjo$A zpiK$|VbN=9tcRmZT=t%uOtOUVL!7{mG_%;rhwd5wX2B1xoh><$G*^OVHX&V9PBwIO z=Kjl7OA&UxTt|=S&bk=ytR1&&WgqUiSwn##tjFP&kdQmDQ~dGX?%`wM&3hh^wN@*+ zdg&k&6W0xb0_P=wzOYJ$7H^c$>u+m0<&q_K{Qw{Am&DnuK>kz_*`e=1U?#` zj2VcJ=i)EZr(~vI1sA=~B{oIwPhbXwj?irgxWYNyH6Gocin^U z2Z`2>yUr4yU2nD%NA%#iKA{~srR2XEA1e>XP3LPD@Y`}_HbQQT$tJR&TQD53yV;uIo)EySLk&#`&Qxcm78b-z(9Jb#IT?fTtOct6x z{uHOeQ0+*qJz3X;d$#GR^uvZ~moRmOQ|GdF4^Tbl+%vTY!e)%EW=tZM){{b-2wbXM zGLdJUsIzvG?yt5K$^kGG!2?;tS8UdqAoK^<(GVg`4O!RSy^msr#^VL`^O*r@+bGB2OF%;WLc&gE4^(W;92gTyjUHP zaJM8QONuu9@$iAe{AYpV!04}gBt&qr1or%%rQ+k76s6xG&&UggOWURC$_ zNGmuht}Pq0n*o^e{PtYu@oLf&_Bg(4m}CRTE*jI=5{%zxd6FefKusa-q@=-TEv6^~ zUg?=LcZB9~iiY)qk8Q|?W$7w{nHs2dB5c>LM-da>^!{d5$u;*aG!Hw*YOK4deg*gH zm`q*OJ*;H!XH+J13CnCE$bsH%u9%K@i^7qhZff℞WATY8E^IryoOjw@8qc0y&*& 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 "%~dp0filelist.txt" +) + +REM ----------------- +REM End of the script +REM ----------------- \ No newline at end of file diff --git a/README.md b/README.md index 7c73745..34ee069 100644 --- a/README.md +++ b/README.md @@ -44,6 +44,22 @@ State: stable UI: no ui +### CopyParameterValuesToParameter + +Copy parameter values of a selected family to another parameter of the same family + +State: stable + +UI: DynamoPlayer + +### DisallowJoinSelectedFrames + +Disallow join on both end on the selected frames + +State: stable + +UI: DynamoPlayer + ### DwgImportCleaner Removes all imported dwgs @@ -60,7 +76,15 @@ State: stable UI: DynamoPlayer -### ImportobjBatch +### ImportDwgBatch + +State: same as importobj, just with dwg + +state: stable, under developement + +UI: no ui + +### ImportObjBatch Imports all objs from a folder to separate rfa files. Designed to be used with Revit Batch Processor @@ -115,3 +139,37 @@ Created for kimai-export-parser Input: Weekday. Output: number of the day starting from monday State: stable, should work in 2.x as well. + +### ReplaceFollowingElements + +Replace same elements follow each other + +Input: + +- list: a list of lists +- searchFor: the value you want to replace if follows each other +- replacement: string to replace the following elements +- countUnit: on the replaced list append this value to the count of the same elements + +Output: + +- replacedList: A list where all of the found following same elements replaced with the replacement +- firstReplacedList: Only the first element is replaced, others counted and appended by the countUnit + +### ReplaceFollowingSameElements + +Replace all following same elements in a list of lists. The differences between this and the previous node thet here you don't have to add a searchfor, itt will replace all following elements + +Input: + +- list: a list of lists +- replacement: string to replace the following elements +- countUnit: on the replaced list append this value to the count of the same elements + +Output: + +- allReplaced: A list where all of the found following same elements replaced with the replacement +- firstCounted: The first element replaced by the number of following elements, others replaced by the replacement +- firstOriginal: First element is the same as before, others replaced by the replacement + +Python source is included next to the .dyf \ No newline at end of file diff --git a/WIP/2.x/BuildingPadGradeCalculator.dyn b/WIP/2.x/BuildingPadGradeCalculator.dyn new file mode 100644 index 0000000..b8e1900 --- /dev/null +++ b/WIP/2.x/BuildingPadGradeCalculator.dyn @@ -0,0 +1,6192 @@ +{ + "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 + } +} \ No newline at end of file diff --git a/WIP/2.x/ExobimArchiveExport.dyn b/WIP/2.x/ExobimArchiveExport.dyn index 1ac0047..498d61a 100644 --- a/WIP/2.x/ExobimArchiveExport.dyn +++ b/WIP/2.x/ExobimArchiveExport.dyn @@ -622,505 +622,6 @@ ], "Replication": "Auto", "Description": "Forces a sequential order of execution. The node wired into the output of the Passthrough node will be executed *after* the node wired into the waitFor input (e.g. important for some Revit operations). The value of the passThrough input will be passed on to the node wired into the output port of the Passthrough node." - }, - { - "ConcreteType": "Dynamo.Graph.Nodes.CodeBlockNodeModel, DynamoCore", - "NodeType": "CodeBlockNode", - "Code": "\".rvt\";\n\".ifc\";", - "Id": "2d4788620d7a4f9f90d91a0410381c12", - "Inputs": [], - "Outputs": [ - { - "Id": "b1a77ceaf230406b86313b60d15d6680", - "Name": "", - "Description": "Value of expression at line 1", - "UsingDefaultValue": false, - "Level": 2, - "UseLevels": false, - "KeepListStructure": false - }, - { - "Id": "9bebfbf7777d4c5b8771f3874204d0d4", - "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.String.Replace@string,string,string", - "Id": "bb1819bf949a4e8bae609a0434d29703", - "Inputs": [ - { - "Id": "011dc854fd9c47feb11b594b5c950f49", - "Name": "str", - "Description": "String to replace substrings in.\n\nstring", - "UsingDefaultValue": false, - "Level": 2, - "UseLevels": false, - "KeepListStructure": false - }, - { - "Id": "0160e85256a546e3b9553b854f00099f", - "Name": "searchFor", - "Description": "Text to be replaced.\n\nstring", - "UsingDefaultValue": false, - "Level": 2, - "UseLevels": false, - "KeepListStructure": false - }, - { - "Id": "7eb161fc896a4c6092c5dde453b6a49a", - "Name": "replaceWith", - "Description": "Text to replace with.\n\nstring", - "UsingDefaultValue": false, - "Level": 2, - "UseLevels": false, - "KeepListStructure": false - } - ], - "Outputs": [ - { - "Id": "89482d1d936a4c868dadd4d66732eeb2", - "Name": "str", - "Description": "String with replacements made.", - "UsingDefaultValue": false, - "Level": 2, - "UseLevels": false, - "KeepListStructure": false - } - ], - "Replication": "Auto", - "Description": "Replaces all occurrances of text in a string with other text.\n\nString.Replace (str: string, searchFor: string, replaceWith: string): string" - }, - { - "ConcreteType": "DSRevitNodesUI.ElementsOfCategory, DSRevitNodesUI", - "NodeType": "ExtensionNode", - "Id": "0920eebe704f49898eb3f9d3e5cc1642", - "Inputs": [ - { - "Id": "3cc840d6dd06455e8456e2a505faa27e", - "Name": "Category", - "Description": "The Category", - "UsingDefaultValue": false, - "Level": 2, - "UseLevels": false, - "KeepListStructure": false - } - ], - "Outputs": [ - { - "Id": "e4b44c4b724a45969839efc55538390d", - "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": "DSRevitNodesUI.Categories, DSRevitNodesUI", - "SelectedIndex": 587, - "NodeType": "ExtensionNode", - "Id": "d1c028b80b754d6ebaefa9b962bdf1d7", - "Inputs": [], - "Outputs": [ - { - "Id": "1f2d244dffd041098d42ba2f842211f6", - "Name": "Category", - "Description": "The selected Category.", - "UsingDefaultValue": false, - "Level": 2, - "UseLevels": false, - "KeepListStructure": false - } - ], - "Replication": "Disabled", - "Description": "All built-in categories." - }, - { - "ConcreteType": "Dynamo.Graph.Nodes.CodeBlockNodeModel, DynamoCore", - "NodeType": "CodeBlockNode", - "Code": "\"Export\";", - "Id": "6d110f67e7ae4233baad0b0daac8e061", - "Inputs": [], - "Outputs": [ - { - "Id": "2ecf064e3cbf45d19fcc9a2c225609ed", - "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.FirstIndexOf@var[]..[],var", - "Id": "e954fb84737e4c57b6e8f0349b96be73", - "Inputs": [ - { - "Id": "4b9af428ae3741619533e87e86e0c7da", - "Name": "list", - "Description": "List to search in. If this argument is null, -1 is returned.\n\nvar[]..[]", - "UsingDefaultValue": false, - "Level": 2, - "UseLevels": false, - "KeepListStructure": false - }, - { - "Id": "ced07650bc774550b5a3bd0091bb5b4b", - "Name": "item", - "Description": "Item to look for.\n\nvar", - "UsingDefaultValue": false, - "Level": 2, - "UseLevels": false, - "KeepListStructure": false - } - ], - "Outputs": [ - { - "Id": "6a2a6985d08f445ca6b5d6c177e691b0", - "Name": "int", - "Description": "Zero-based index of the item in the list, or -1 if it is not found.", - "UsingDefaultValue": false, - "Level": 2, - "UseLevels": false, - "KeepListStructure": false - } - ], - "Replication": "Auto", - "Description": "Given an item, returns the zero-based index of its first occurrence in the list. If the item cannot be found in the list, -1 is returned.\n\nList.FirstIndexOf (list: var[]..[], item: var): int" - }, - { - "ConcreteType": "Dynamo.Graph.Nodes.ZeroTouch.DSFunction, DynamoCore", - "NodeType": "FunctionNode", - "FunctionSignature": "DSCore.List.GetItemAtIndex@var[]..[],int", - "Id": "ada340c900f7470b87ca6731aac34b34", - "Inputs": [ - { - "Id": "d4a362fb7f3b4968b4c7b7df9313dc25", - "Name": "list", - "Description": "List to fetch an item from.\n\nvar[]..[]", - "UsingDefaultValue": false, - "Level": 2, - "UseLevels": false, - "KeepListStructure": false - }, - { - "Id": "c4d32d03759e4c4989205ac72047e725", - "Name": "index", - "Description": "Index of the item to be fetched.\n\nint", - "UsingDefaultValue": false, - "Level": 2, - "UseLevels": false, - "KeepListStructure": false - } - ], - "Outputs": [ - { - "Id": "7e7047b05c934ec0a3ac8ed5b2ae6583", - "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.CustomNodes.Function, DynamoCore", - "FunctionSignature": "9266cc47-e982-46fc-9fd4-59bd7fb19a53", - "FunctionType": "Graph", - "NodeType": "FunctionNode", - "Id": "2fa1000c1f4c49f0b391d3910fbd4029", - "Inputs": [ - { - "Id": "d3bb3d5bd3094a74adb988e67cd34746", - "Name": "element", - "Description": "var[]..[]", - "UsingDefaultValue": false, - "Level": 2, - "UseLevels": false, - "KeepListStructure": false - } - ], - "Outputs": [ - { - "Id": "cdf78cc829e14e498120451ed83d846e", - "Name": "name", - "Description": "return value", - "UsingDefaultValue": false, - "Level": 2, - "UseLevels": false, - "KeepListStructure": false - } - ], - "Replication": "Auto", - "Description": "Gets an element's name. Unlike the OOTB node, this node should work for all Revit elements that have names and will also return the localized names of system parameters, parameter groups, display unit types, parameter types, unit symbol types and unit types." - }, - { - "ConcreteType": "Dynamo.Graph.Nodes.CodeBlockNodeModel, DynamoCore", - "NodeType": "CodeBlockNode", - "Code": "\"IFC2x3 Coordination View 2.0\";\n\"IFC2x3 Coord 2.0 PBP\";", - "Id": "85a019f2721d42f5b4d6ab7865d652a2", - "Inputs": [], - "Outputs": [ - { - "Id": "a6ebc4ed2440470ab3d96d4eb3d07059", - "Name": "", - "Description": "Value of expression at line 1", - "UsingDefaultValue": false, - "Level": 2, - "UseLevels": false, - "KeepListStructure": false - }, - { - "Id": "491a676ce85049cd91dfb973d35a476a", - "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": "Orchid.RevitProject.IFC.Export@var,var,Revit.Elements.Element,Revit.Elements.Element,string,bool", - "Id": "856cf5674ca54e66af2cea2ccc1671d4", - "Inputs": [ - { - "Id": "8b78e1cb1e384fcfacda7f935f2d08a0", - "Name": "document", - "Description": "Document as Revit type\n\nvar\nDefault value : null", - "UsingDefaultValue": true, - "Level": 2, - "UseLevels": false, - "KeepListStructure": false - }, - { - "Id": "e1493edd0c4149748d8bf803e2a6d5c6", - "Name": "setting", - "Description": "IFC export setting\n\nvar\nDefault value : null", - "UsingDefaultValue": true, - "Level": 2, - "UseLevels": false, - "KeepListStructure": false - }, - { - "Id": "739b89ec4cea46a4a64da91be406dbca", - "Name": "view", - "Description": "View as Dynamo type\n\nElement\nDefault value : null", - "UsingDefaultValue": true, - "Level": 2, - "UseLevels": false, - "KeepListStructure": false - }, - { - "Id": "921fa133d9334619be83276420b31c0b", - "Name": "phase", - "Description": "Phase to export as Dynamo type\n\nElement\nDefault value : null", - "UsingDefaultValue": true, - "Level": 2, - "UseLevels": false, - "KeepListStructure": false - }, - { - "Id": "5399ce1ba2874673b8a0d1e380a6fe44", - "Name": "file", - "Description": "The export file name incl. path\n\nstring\nDefault value : null", - "UsingDefaultValue": true, - "Level": 2, - "UseLevels": false, - "KeepListStructure": false - }, - { - "Id": "79564ac0824c43cd80c23db30b907059", - "Name": "overwrite", - "Description": "Overwrite existing file?\n\nbool\nDefault value : true", - "UsingDefaultValue": true, - "Level": 2, - "UseLevels": false, - "KeepListStructure": false - } - ], - "Outputs": [ - { - "Id": "79c85ac5494f4c48b59e04585ebefae4", - "Name": "watch", - "Description": "Add a watch node to verify the output", - "UsingDefaultValue": false, - "Level": 2, - "UseLevels": false, - "KeepListStructure": false - } - ], - "Replication": "Auto", - "Description": "Export to IFC. Require IFC exporter 19.1.0 or higher https://sourceforge.net/projects/ifcexporter . the export function includes a default IFC export setting!\n\nIFC.Export (document: var = null, setting: var = null, view: Element = null, phase: Element = null, file: string = null, overwrite: bool = true): string" - }, - { - "ConcreteType": "Dynamo.Graph.Nodes.ZeroTouch.DSFunction, DynamoCore", - "NodeType": "FunctionNode", - "FunctionSignature": "Orchid.RevitProject.IFC.SettingByName@string", - "Id": "a54c2fb49e18446981237ff6d5f3ea2d", - "Inputs": [ - { - "Id": "b9ef9f3ff9bf49269ddc1bd0c9009562", - "Name": "name", - "Description": "The IFC setting name\n\nstring\nDefault value : null", - "UsingDefaultValue": true, - "Level": 2, - "UseLevels": false, - "KeepListStructure": false - } - ], - "Outputs": [ - { - "Id": "b884789ed5fe4889b4d2d83bd7e44376", - "Name": "Setting", - "Description": "Ifc export setting", - "UsingDefaultValue": false, - "Level": 2, - "UseLevels": false, - "KeepListStructure": false - } - ], - "Replication": "Auto", - "Description": "Ifc export setting, based on the available in the document\n\nIFC.SettingByName (name: string = null): var[]..[]" - }, - { - "ConcreteType": "Dynamo.Graph.Nodes.ZeroTouch.DSFunction, DynamoCore", - "NodeType": "FunctionNode", - "FunctionSignature": "Orchid.RevitProject.Document.Current", - "Id": "19a355f78e3a41c093feccaaacdf2695", - "Inputs": [], - "Outputs": [ - { - "Id": "68d75dedafc34bbc90635630040b8cc8", - "Name": "Document", - "Description": "Document as Revit type", - "UsingDefaultValue": false, - "Level": 2, - "UseLevels": false, - "KeepListStructure": false - } - ], - "Replication": "Auto", - "Description": "Get current document\n\nDocument.Current: var" - }, - { - "ConcreteType": "Dynamo.Graph.Nodes.CustomNodes.Function, DynamoCore", - "FunctionSignature": "ecce77dc-1290-438e-a056-970b256fd553", - "FunctionType": "Graph", - "NodeType": "FunctionNode", - "Id": "baa71c9c52cb42b389003c313a102126", - "Inputs": [ - { - "Id": "d8fe20ffc59f4376bdefb4afab64e4bf", - "Name": "passThrough", - "Description": "var[]..[]", - "UsingDefaultValue": false, - "Level": 2, - "UseLevels": false, - "KeepListStructure": false - }, - { - "Id": "7d5fb4a821914db184fd45647149f665", - "Name": "waitFor", - "Description": "var[]..[]", - "UsingDefaultValue": false, - "Level": 2, - "UseLevels": false, - "KeepListStructure": false - } - ], - "Outputs": [ - { - "Id": "537a616d57b249cc8613af9f980499ee", - "Name": "passThrough", - "Description": "return value", - "UsingDefaultValue": false, - "Level": 2, - "UseLevels": false, - "KeepListStructure": false - } - ], - "Replication": "Auto", - "Description": "Forces a sequential order of execution. The node wired into the output of the Passthrough node will be executed *after* the node wired into the waitFor input (e.g. important for some Revit operations). The value of the passThrough input will be passed on to the node wired into the output port of the Passthrough node." - }, - { - "ConcreteType": "Dynamo.Graph.Nodes.ZeroTouch.DSFunction, DynamoCore", - "NodeType": "FunctionNode", - "FunctionSignature": "Revit.Application.Document.FilePath", - "Id": "9f0d87c10b2a46ae98e1dc5d8e341b47", - "Inputs": [ - { - "Id": "6da9384155984b298d10f357ad8981a3", - "Name": "document", - "Description": "Revit.Application.Document", - "UsingDefaultValue": false, - "Level": 2, - "UseLevels": false, - "KeepListStructure": false - } - ], - "Outputs": [ - { - "Id": "a7aae8b33c934a039d8d3ca92054d346", - "Name": "string", - "Description": "string", - "UsingDefaultValue": false, - "Level": 2, - "UseLevels": false, - "KeepListStructure": false - } - ], - "Replication": "Auto", - "Description": "The full path of the Document.\n\nDocument.FilePath: string" - }, - { - "ConcreteType": "Dynamo.Graph.Nodes.ZeroTouch.DSFunction, DynamoCore", - "NodeType": "FunctionNode", - "FunctionSignature": "Revit.Application.Document.Current", - "Id": "a260388a5a2c4e079b5d2c14654b1596", - "Inputs": [], - "Outputs": [ - { - "Id": "44b00b64e63a46f8b5b2b3a3c1b28e82", - "Name": "Document", - "Description": "Document", - "UsingDefaultValue": false, - "Level": 2, - "UseLevels": false, - "KeepListStructure": false - } - ], - "Replication": "Auto", - "Description": "Get the current document\n\nDocument.Current: Document" } ], "Connectors": [ @@ -1219,101 +720,15 @@ "End": "258a32056ef846a58abd943778ee5514", "Id": "ac74e68452cb49cbb47e654d4cff8de7" }, - { - "Start": "e6069f2447694caba2661cdd330b6a45", - "End": "7d5fb4a821914db184fd45647149f665", - "Id": "b5d383e0312b4f7c823e8602d3aad70a" - }, { "Start": "d7359dd27c1e4b269713d5b42326fd48", "End": "946370aef55e4cea83116f0fee415106", "Id": "44247ef2d54d40a8895143b64862dc9a" - }, - { - "Start": "b1a77ceaf230406b86313b60d15d6680", - "End": "0160e85256a546e3b9553b854f00099f", - "Id": "74e1d9addd8c43db8d5a3fa7e7cab8e8" - }, - { - "Start": "9bebfbf7777d4c5b8771f3874204d0d4", - "End": "7eb161fc896a4c6092c5dde453b6a49a", - "Id": "2f3ec32cfd024ce2b3e45b763e648dc3" - }, - { - "Start": "89482d1d936a4c868dadd4d66732eeb2", - "End": "5399ce1ba2874673b8a0d1e380a6fe44", - "Id": "3b957cda7cd44e7789e5a4e9c329aeb5" - }, - { - "Start": "e4b44c4b724a45969839efc55538390d", - "End": "d3bb3d5bd3094a74adb988e67cd34746", - "Id": "d589af5facd044daa334c131d65f513b" - }, - { - "Start": "e4b44c4b724a45969839efc55538390d", - "End": "d4a362fb7f3b4968b4c7b7df9313dc25", - "Id": "c95d8a7fe7e14bf5aade8d6a1452daa5" - }, - { - "Start": "1f2d244dffd041098d42ba2f842211f6", - "End": "3cc840d6dd06455e8456e2a505faa27e", - "Id": "aa84a85339764403be150e0ba183b47f" - }, - { - "Start": "2ecf064e3cbf45d19fcc9a2c225609ed", - "End": "ced07650bc774550b5a3bd0091bb5b4b", - "Id": "17fec5bd93664133a2d2c3dd6292ead8" - }, - { - "Start": "6a2a6985d08f445ca6b5d6c177e691b0", - "End": "c4d32d03759e4c4989205ac72047e725", - "Id": "9b17ed169b554355a73c18482d0f47a7" - }, - { - "Start": "7e7047b05c934ec0a3ac8ed5b2ae6583", - "End": "739b89ec4cea46a4a64da91be406dbca", - "Id": "af62603d2cc9426d9822d7ec5e70341f" - }, - { - "Start": "cdf78cc829e14e498120451ed83d846e", - "End": "4b9af428ae3741619533e87e86e0c7da", - "Id": "ce5dc95bdfd5467ca26bfdc0d59a5fda" - }, - { - "Start": "491a676ce85049cd91dfb973d35a476a", - "End": "d8fe20ffc59f4376bdefb4afab64e4bf", - "Id": "ea8d41f9cdbf4a0cbac3f24e1fa0fb33" - }, - { - "Start": "b884789ed5fe4889b4d2d83bd7e44376", - "End": "e1493edd0c4149748d8bf803e2a6d5c6", - "Id": "0403441102a94e728194a7678fab827e" - }, - { - "Start": "68d75dedafc34bbc90635630040b8cc8", - "End": "8b78e1cb1e384fcfacda7f935f2d08a0", - "Id": "2642f6e53c37410eaa6e910b27e0042f" - }, - { - "Start": "537a616d57b249cc8613af9f980499ee", - "End": "b9ef9f3ff9bf49269ddc1bd0c9009562", - "Id": "0e17227458274fb6a72df34d530629f8" - }, - { - "Start": "a7aae8b33c934a039d8d3ca92054d346", - "End": "011dc854fd9c47feb11b594b5c950f49", - "Id": "dd3713af14ac423e8d4d2a3b45a8c18e" - }, - { - "Start": "44b00b64e63a46f8b5b2b3a3c1b28e82", - "End": "6da9384155984b298d10f357ad8981a3", - "Id": "c5486291178f4c18911172025ae88aa9" } ], "Dependencies": [ "a4dd8f6e-689f-4998-b8ef-4a04146d12c2", - "ecce77dc-1290-438e-a056-970b256fd553", - "9266cc47-e982-46fc-9fd4-59bd7fb19a53" + "ecce77dc-1290-438e-a056-970b256fd553" ], "Bindings": [], "View": { @@ -1527,156 +942,6 @@ "Excluded": false, "X": 1801.5140858367813, "Y": 673.26154643404084 - }, - { - "ShowGeometry": true, - "Name": "Code Block", - "Id": "2d4788620d7a4f9f90d91a0410381c12", - "IsSetAsInput": false, - "IsSetAsOutput": false, - "Excluded": false, - "X": 4883.5249463163564, - "Y": 1434.5644237003448 - }, - { - "ShowGeometry": true, - "Name": "String.Replace", - "Id": "bb1819bf949a4e8bae609a0434d29703", - "IsSetAsInput": false, - "IsSetAsOutput": false, - "Excluded": false, - "X": 5198.5249463163564, - "Y": 1363.1377570336783 - }, - { - "ShowGeometry": true, - "Name": "All Elements of Category", - "Id": "0920eebe704f49898eb3f9d3e5cc1642", - "IsSetAsInput": false, - "IsSetAsOutput": false, - "Excluded": false, - "X": 4400.1720901250292, - "Y": 876.09568431708226 - }, - { - "ShowGeometry": true, - "Name": "Categories", - "Id": "d1c028b80b754d6ebaefa9b962bdf1d7", - "IsSetAsInput": false, - "IsSetAsOutput": false, - "Excluded": false, - "X": 4134.1720901250292, - "Y": 876.09568431708226 - }, - { - "ShowGeometry": true, - "Name": "Code Block", - "Id": "6d110f67e7ae4233baad0b0daac8e061", - "IsSetAsInput": false, - "IsSetAsOutput": false, - "Excluded": false, - "X": 4657.14716410515, - "Y": 1082.3907060582403 - }, - { - "ShowGeometry": true, - "Name": "List.FirstIndexOf", - "Id": "e954fb84737e4c57b6e8f0349b96be73", - "IsSetAsInput": false, - "IsSetAsOutput": false, - "Excluded": false, - "X": 4961.14716410515, - "Y": 1013.1773727249069 - }, - { - "ShowGeometry": true, - "Name": "List.GetItemAtIndex", - "Id": "ada340c900f7470b87ca6731aac34b34", - "IsSetAsInput": false, - "IsSetAsOutput": false, - "Excluded": false, - "X": 5240.1720901250292, - "Y": 882.59568431708226 - }, - { - "ShowGeometry": true, - "Name": "Element.Name+", - "Id": "2fa1000c1f4c49f0b391d3910fbd4029", - "IsSetAsInput": false, - "IsSetAsOutput": false, - "Excluded": false, - "X": 4657.14716410515, - "Y": 974.177372724907 - }, - { - "ShowGeometry": true, - "Name": "Code Block", - "Id": "85a019f2721d42f5b4d6ab7865d652a2", - "IsSetAsInput": false, - "IsSetAsOutput": false, - "Excluded": false, - "X": 4268.6935967047584, - "Y": 658.064108677994 - }, - { - "ShowGeometry": true, - "Name": "IFC.Export", - "Id": "856cf5674ca54e66af2cea2ccc1671d4", - "IsSetAsInput": false, - "IsSetAsOutput": false, - "Excluded": false, - "X": 5726.5729440465411, - "Y": 521.872322656337 - }, - { - "ShowGeometry": true, - "Name": "IFC.SettingByName", - "Id": "a54c2fb49e18446981237ff6d5f3ea2d", - "IsSetAsInput": false, - "IsSetAsOutput": false, - "Excluded": false, - "X": 5140.1438370547949, - "Y": 600.13315890770139 - }, - { - "ShowGeometry": true, - "Name": "Document.Current", - "Id": "19a355f78e3a41c093feccaaacdf2695", - "IsSetAsInput": false, - "IsSetAsOutput": false, - "Excluded": false, - "X": 5220.8248317366561, - "Y": 448.85629387921108 - }, - { - "ShowGeometry": true, - "Name": "Passthrough", - "Id": "baa71c9c52cb42b389003c313a102126", - "IsSetAsInput": false, - "IsSetAsOutput": false, - "Excluded": false, - "X": 4681.5582386802234, - "Y": 420.55966063876394 - }, - { - "ShowGeometry": true, - "Name": "Document.FilePath", - "Id": "9f0d87c10b2a46ae98e1dc5d8e341b47", - "IsSetAsInput": false, - "IsSetAsOutput": false, - "Excluded": false, - "X": 4883.5249463163564, - "Y": 1326.1377570336783 - }, - { - "ShowGeometry": true, - "Name": "Document.Current", - "Id": "a260388a5a2c4e079b5d2c14654b1596", - "IsSetAsInput": false, - "IsSetAsOutput": false, - "Excluded": false, - "X": 4655.5249463163564, - "Y": 1326.1377570336783 } ], "Annotations": [ @@ -1728,40 +993,10 @@ "InitialHeight": 378.07004169574213, "TextblockHeight": 43.0, "Background": "#FFC1D676" - }, - { - "Id": "f46261c0a2014609a747db9a9d482986", - "Title": "Export ifc", - "Nodes": [ - "2d4788620d7a4f9f90d91a0410381c12", - "bb1819bf949a4e8bae609a0434d29703", - "0920eebe704f49898eb3f9d3e5cc1642", - "d1c028b80b754d6ebaefa9b962bdf1d7", - "6d110f67e7ae4233baad0b0daac8e061", - "e954fb84737e4c57b6e8f0349b96be73", - "ada340c900f7470b87ca6731aac34b34", - "2fa1000c1f4c49f0b391d3910fbd4029", - "85a019f2721d42f5b4d6ab7865d652a2", - "856cf5674ca54e66af2cea2ccc1671d4", - "a54c2fb49e18446981237ff6d5f3ea2d", - "19a355f78e3a41c093feccaaacdf2695", - "baa71c9c52cb42b389003c313a102126", - "9f0d87c10b2a46ae98e1dc5d8e341b47", - "a260388a5a2c4e079b5d2c14654b1596" - ], - "Left": 4124.1720901250292, - "Top": 367.55966063876394, - "Width": 1829.400853921512, - "Height": 1170.0047630615809, - "FontSize": 36.0, - "InitialTop": 420.55966063876394, - "InitialHeight": 1147.0047630615811, - "TextblockHeight": 43.0, - "Background": "#FFC1D676" } ], - "X": -510.62823152348983, - "Y": 242.84372698514881, - "Zoom": 0.36052227403133252 + "X": -900.72862415757663, + "Y": 146.70621995134951, + "Zoom": 0.54146208521015526 } } \ No newline at end of file diff --git a/WIP/BuildingPadFiller.dyn b/WIP/BuildingPadFiller.dyn new file mode 100644 index 0000000..79955eb --- /dev/null +++ b/WIP/BuildingPadFiller.dyn @@ -0,0 +1,222 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/WIP/LayerNamesToParameter/1.x/empty-dir b/WIP/LayerNamesToParameter/1.x/empty-dir new file mode 100644 index 0000000..e69de29 diff --git a/WIP/LayerNamesToParameter/2.x/LayerNamesToParameter.dyn b/WIP/LayerNamesToParameter/2.x/LayerNamesToParameter.dyn new file mode 100644 index 0000000..b2da6de --- /dev/null +++ b/WIP/LayerNamesToParameter/2.x/LayerNamesToParameter.dyn @@ -0,0 +1,4010 @@ +{ + "Uuid": "3c9d0464-8643-5ffe-96e5-ab1769818209", + "IsCustomNode": false, + "Description": "", + "Name": "LayerNamesToParameter", + "ElementResolver": { + "ResolutionMap": {} + }, + "Inputs": [ + { + "Id": "47987fb02df14fc68d1e28d7eb4127a3", + "Name": "'Layerlist name' parameter", + "Type": "string", + "Value": "RétegrendMegnevezés", + "Description": "Creates a string." + }, + { + "Id": "b40ad679b7364a9aa6d9cae73caf8b2a", + "Name": "Use material description", + "Type": "boolean", + "Value": "true", + "Description": "Selection between a true and false." + } + ], + "Outputs": [], + "Nodes": [ + { + "ConcreteType": "DSRevitNodesUI.Categories, DSRevitNodesUI", + "SelectedIndex": 110, + "NodeType": "ExtensionNode", + "Id": "668e9ae9cdd24dfab3a1bae211b25268", + "Inputs": [], + "Outputs": [ + { + "Id": "ac4bb0ca01a94a0c8cbbac7a7b6a50d3", + "Name": "Category", + "Description": "The selected Category.", + "UsingDefaultValue": false, + "Level": 2, + "UseLevels": false, + "KeepListStructure": false + } + ], + "Replication": "Disabled", + "Description": "All built-in categories." + }, + { + "ConcreteType": "Dynamo.Graph.Nodes.CustomNodes.Function, DynamoCore", + "FunctionSignature": "1e3b5d82-c924-4649-a653-7fa7ead9cd1c", + "FunctionType": "Graph", + "NodeType": "FunctionNode", + "Id": "b3569226a756430ea51e1c9f66a96f75", + "Inputs": [ + { + "Id": "345c83d8798742718d2bde83bcee2436", + "Name": "elementType", + "Description": "var[]..[]", + "UsingDefaultValue": false, + "Level": 2, + "UseLevels": false, + "KeepListStructure": false + } + ], + "Outputs": [ + { + "Id": "05c106e4eeef415999d1f7a3867f1f38", + "Name": "materials", + "Description": "return value", + "UsingDefaultValue": false, + "Level": 2, + "UseLevels": false, + "KeepListStructure": false + }, + { + "Id": "aaa543079a9e4fb394d31083aa4fe0a7", + "Name": "functions", + "Description": "return value", + "UsingDefaultValue": false, + "Level": 2, + "UseLevels": false, + "KeepListStructure": false + }, + { + "Id": "a484481af9504368b80d10ecaf10be7a", + "Name": "widths", + "Description": "return value", + "UsingDefaultValue": false, + "Level": 2, + "UseLevels": false, + "KeepListStructure": false + }, + { + "Id": "43d8a880ef1d40979db2af87c61d50b9", + "Name": "isCore", + "Description": "return value", + "UsingDefaultValue": false, + "Level": 2, + "UseLevels": false, + "KeepListStructure": false + }, + { + "Id": "0422fd060d884445a14575d59383fb7f", + "Name": "wraps", + "Description": "return value", + "UsingDefaultValue": false, + "Level": 2, + "UseLevels": false, + "KeepListStructure": false + }, + { + "Id": "ca3293d08fa144199a78eab1fed6131b", + "Name": "isVariable", + "Description": "return value", + "UsingDefaultValue": false, + "Level": 2, + "UseLevels": false, + "KeepListStructure": false + }, + { + "Id": "2826c23834f148ed808d097b648a8b78", + "Name": "isStructuralDeck", + "Description": "return value", + "UsingDefaultValue": false, + "Level": 2, + "UseLevels": false, + "KeepListStructure": false + }, + { + "Id": "cfb66c90b4ae432593ea81a04342e77a", + "Name": "layers", + "Description": "return value", + "UsingDefaultValue": false, + "Level": 2, + "UseLevels": false, + "KeepListStructure": false + } + ], + "Replication": "Auto", + "Description": "Retrieves the compound layers of any layered family type (wall types, roof types, floor types etc.)" + }, + { + "ConcreteType": "Dynamo.Graph.Nodes.CustomNodes.Function, DynamoCore", + "FunctionSignature": "4796d57c-a1a0-4676-b524-57abb5fa73be", + "FunctionType": "Graph", + "NodeType": "FunctionNode", + "Id": "108db5eef5b74c4e9e7587b412541c7b", + "Inputs": [ + { + "Id": "5b1df5098bb143879fcfe2cb487a2720", + "Name": "element", + "Description": "var[]..[]", + "UsingDefaultValue": false, + "Level": 2, + "UseLevels": false, + "KeepListStructure": false + } + ], + "Outputs": [ + { + "Id": "2d039e60f7f644d0b14022e5606ed901", + "Name": "type", + "Description": "return value", + "UsingDefaultValue": false, + "Level": 2, + "UseLevels": false, + "KeepListStructure": false + } + ], + "Replication": "Auto", + "Description": "Gets the family type of a given element (if applicable). Unlike the OOTB node, it also works for elements in linked models." + }, + { + "ConcreteType": "Dynamo.Graph.Nodes.ZeroTouch.DSFunction, DynamoCore", + "NodeType": "FunctionNode", + "FunctionSignature": "Revit.Elements.Element.GetParameterValueByName@string", + "Id": "0e33b6fd8e734cb687c06080341297f3", + "Inputs": [ + { + "Id": "7e4f7e4e0d6e49b3baccfbae727e5052", + "Name": "element", + "Description": "Revit.Elements.Element", + "UsingDefaultValue": false, + "Level": 2, + "UseLevels": false, + "KeepListStructure": false + }, + { + "Id": "6144c36d47cd43a78ddad2c30b1ce095", + "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": "fe62f932773e4533afa156cad82af07b", + "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": "\"Description\";\n\"Name\";", + "Id": "0da2808dfb5f4ef3b9844d861f0bbbd6", + "Inputs": [], + "Outputs": [ + { + "Id": "864a73bdb4954d4383d654eeab78e675", + "Name": "", + "Description": "Value of expression at line 1", + "UsingDefaultValue": false, + "Level": 2, + "UseLevels": false, + "KeepListStructure": false + }, + { + "Id": "e782f6e02620489d941a324c11d964db", + "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.SetParameterByName@string,var", + "Id": "2107a0d05686481c8134c42fa4a12bb7", + "Inputs": [ + { + "Id": "d01e768131774bb382b3b9dc549a39e3", + "Name": "element", + "Description": "Revit.Elements.Element", + "UsingDefaultValue": false, + "Level": 2, + "UseLevels": false, + "KeepListStructure": false + }, + { + "Id": "6fe966a86cf5443b87196f1c2556c3a7", + "Name": "parameterName", + "Description": "The name of the parameter to set.\n\nstring", + "UsingDefaultValue": false, + "Level": 2, + "UseLevels": false, + "KeepListStructure": false + }, + { + "Id": "e1a7b4d916fe489aadc2550a0460bceb", + "Name": "value", + "Description": "The value.\n\nvar", + "UsingDefaultValue": false, + "Level": 2, + "UseLevels": false, + "KeepListStructure": false + } + ], + "Outputs": [ + { + "Id": "2d40c93e93fb4c0590f9117df776d4a9", + "Name": "Element", + "Description": "Element", + "UsingDefaultValue": false, + "Level": 2, + "UseLevels": false, + "KeepListStructure": false + } + ], + "Replication": "Auto", + "Description": "Set one of the element's parameters.\n\nElement.SetParameterByName (parameterName: string, value: var): Element" + }, + { + "ConcreteType": "Dynamo.Graph.Nodes.CustomNodes.Function, DynamoCore", + "FunctionSignature": "7138be89-af7b-4232-b938-e63a5fe78240", + "FunctionType": "Graph", + "NodeType": "FunctionNode", + "Id": "e8e0c18dfbc74d069159fa163f4bd95f", + "Inputs": [ + { + "Id": "16ae5a247abd4105a80ee38b5840df9a", + "Name": "num", + "Description": "var[]", + "UsingDefaultValue": false, + "Level": 2, + "UseLevels": false, + "KeepListStructure": false + }, + { + "Id": "d40703144cb34d5abf6525f0b1bed824", + "Name": "digits", + "Description": "int\nDefault value : null (disabled)", + "UsingDefaultValue": false, + "Level": 2, + "UseLevels": false, + "KeepListStructure": false + } + ], + "Outputs": [ + { + "Id": "326780fae3d344f49a0b8d04faafe9e3", + "Name": "str", + "Description": "return value", + "UsingDefaultValue": false, + "Level": 2, + "UseLevels": false, + "KeepListStructure": false + } + ], + "Replication": "Auto", + "Description": "Converts the input number(s) to string. You can optionally limit the number of digits." + }, + { + "ConcreteType": "DSRevitNodesUI.ElementsOfCategory, DSRevitNodesUI", + "NodeType": "ExtensionNode", + "Id": "2d8b3b8c181f4377bd1cff438435a2a5", + "Inputs": [ + { + "Id": "442db7ce643549e3b7759fba8c1a91d2", + "Name": "Category", + "Description": "The Category", + "UsingDefaultValue": false, + "Level": 2, + "UseLevels": false, + "KeepListStructure": false + } + ], + "Outputs": [ + { + "Id": "2cbd65339d4f440dbc26bfa07b0f8c14", + "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": "DSRevitNodesUI.Categories, DSRevitNodesUI", + "SelectedIndex": 208, + "NodeType": "ExtensionNode", + "Id": "ebe9480a119149c489cd99a57325b06c", + "Inputs": [], + "Outputs": [ + { + "Id": "67a6131008574a89b991822c94519f23", + "Name": "Category", + "Description": "The selected Category.", + "UsingDefaultValue": false, + "Level": 2, + "UseLevels": false, + "KeepListStructure": false + } + ], + "Replication": "Disabled", + "Description": "All built-in categories." + }, + { + "ConcreteType": "DSRevitNodesUI.Categories, DSRevitNodesUI", + "SelectedIndex": 604, + "NodeType": "ExtensionNode", + "Id": "78191b33be524cba9331af8c26df6542", + "Inputs": [], + "Outputs": [ + { + "Id": "be1cfe789b9046d28cdf11157575380d", + "Name": "Category", + "Description": "The selected Category.", + "UsingDefaultValue": false, + "Level": 2, + "UseLevels": false, + "KeepListStructure": false + } + ], + "Replication": "Disabled", + "Description": "All built-in categories." + }, + { + "ConcreteType": "DSRevitNodesUI.Categories, DSRevitNodesUI", + "SelectedIndex": 408, + "NodeType": "ExtensionNode", + "Id": "68c0dfc1cab049369d2b67afd239bb5a", + "Inputs": [], + "Outputs": [ + { + "Id": "cea6a3566d3e455793c3df1bbd2a69f4", + "Name": "Category", + "Description": "The selected Category.", + "UsingDefaultValue": false, + "Level": 2, + "UseLevels": false, + "KeepListStructure": false + } + ], + "Replication": "Disabled", + "Description": "All built-in categories." + }, + { + "ConcreteType": "Dynamo.Graph.Nodes.ZeroTouch.DSFunction, DynamoCore", + "NodeType": "FunctionNode", + "FunctionSignature": "DSCore.List.UniqueItems@var[]..[]", + "Id": "b19c3d797b7145e088e947a19fda99c7", + "Inputs": [ + { + "Id": "72fa96b47b294e00ab50fe73764f9d78", + "Name": "list", + "Description": "List to filter duplicates out of.\n\nvar[]..[]", + "UsingDefaultValue": false, + "Level": 2, + "UseLevels": false, + "KeepListStructure": false + } + ], + "Outputs": [ + { + "Id": "8aa66e41ee4e46efb12e83b90c5e7bd4", + "Name": "list", + "Description": "Filtered list.", + "UsingDefaultValue": false, + "Level": 2, + "UseLevels": false, + "KeepListStructure": false + } + ], + "Replication": "Auto", + "Description": "Creates a new list containing all unique items in the given list.\n\nList.UniqueItems (list: var[]..[]): var[]..[]" + }, + { + "ConcreteType": "CoreNodeModels.CreateList, CoreNodeModels", + "VariableInputPorts": true, + "NodeType": "ExtensionNode", + "Id": "8102dc14d1e148d997544448223ab310", + "Inputs": [ + { + "Id": "92f6172d52fc4447ba1746e1da0ee53e", + "Name": "item0", + "Description": "Item Index #0", + "UsingDefaultValue": false, + "Level": 2, + "UseLevels": false, + "KeepListStructure": false + }, + { + "Id": "f4d4d9fadafd491baaa427169f55b94b", + "Name": "item1", + "Description": "Item Index #1", + "UsingDefaultValue": false, + "Level": 2, + "UseLevels": false, + "KeepListStructure": false + }, + { + "Id": "00eefeef6a4142f2ba7a3da1213be516", + "Name": "item2", + "Description": "Item Index #2", + "UsingDefaultValue": false, + "Level": 2, + "UseLevels": false, + "KeepListStructure": false + }, + { + "Id": "b1442216e8e0413db0d986cf21abbdb5", + "Name": "item3", + "Description": "Item Index #3", + "UsingDefaultValue": false, + "Level": 2, + "UseLevels": false, + "KeepListStructure": false + } + ], + "Outputs": [ + { + "Id": "6bc671c7f67e462bb910966d260db99d", + "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": "CoreNodeModels.Input.IntegerSlider, CoreNodeModels", + "NodeType": "NumberInputNode", + "NumberType": "Integer", + "InputValue": 0, + "MaximumValue": 2, + "MinimumValue": 0, + "StepValue": 1, + "Id": "942038f5301d4e3cb971fd6da0ea6535", + "Inputs": [], + "Outputs": [ + { + "Id": "07f2e920bfa0413f81c34477c12c1113", + "Name": "", + "Description": "Int32", + "UsingDefaultValue": false, + "Level": 2, + "UseLevels": false, + "KeepListStructure": false + } + ], + "Replication": "Disabled", + "Description": "A slider that produces integer values." + }, + { + "ConcreteType": "CoreNodeModels.Input.StringInput, CoreNodeModels", + "NodeType": "StringInputNode", + "InputValue": "RétegrendMegnevezés", + "Id": "47987fb02df14fc68d1e28d7eb4127a3", + "Inputs": [], + "Outputs": [ + { + "Id": "cf67d6ba779141988603cd41a3a20d71", + "Name": "", + "Description": "String", + "UsingDefaultValue": false, + "Level": 2, + "UseLevels": false, + "KeepListStructure": false + } + ], + "Replication": "Disabled", + "Description": "Creates a string." + }, + { + "ConcreteType": "CoreNodeModels.Input.StringInput, CoreNodeModels", + "NodeType": "StringInputNode", + "InputValue": "RétegrendVastagságok", + "Id": "9cac7901cb644c0cbf90f76e0d6422ad", + "Inputs": [], + "Outputs": [ + { + "Id": "f5273c9c9d574f0782a8674102c9b8e8", + "Name": "", + "Description": "String", + "UsingDefaultValue": false, + "Level": 2, + "UseLevels": false, + "KeepListStructure": false + } + ], + "Replication": "Disabled", + "Description": "Creates a string." + }, + { + "ConcreteType": "CoreNodeModels.Input.StringInput, CoreNodeModels", + "NodeType": "StringInputNode", + "InputValue": "RétegrendRétegek", + "Id": "04eebda61fae41a3848a244e40cf273e", + "Inputs": [], + "Outputs": [ + { + "Id": "f6f46131499447ae9a71f79808383fbd", + "Name": "", + "Description": "String", + "UsingDefaultValue": false, + "Level": 2, + "UseLevels": false, + "KeepListStructure": false + } + ], + "Replication": "Disabled", + "Description": "Creates a string." + }, + { + "ConcreteType": "Dynamo.Graph.Nodes.ZeroTouch.DSVarArgFunction, DynamoCore", + "FunctionSignature": "DSCore.String.Join@string,string[]", + "FunctionType": "VariableArgument", + "NodeType": "FunctionNode", + "Id": "a8fe84c0ab5343488c21aff9ff9bbede", + "Inputs": [ + { + "Id": "f64e6297f93449fda2bf99475195ed89", + "Name": "separator", + "Description": "String to be inserted between joined strings.\n\nstring", + "UsingDefaultValue": false, + "Level": 2, + "UseLevels": false, + "KeepListStructure": false + }, + { + "Id": "c50bb0e1baaf4fd794e0e6b739908c12", + "Name": "string0", + "Description": "Strings to be joined into a single string.\n\nstring[]", + "UsingDefaultValue": false, + "Level": 2, + "UseLevels": false, + "KeepListStructure": false + } + ], + "Outputs": [ + { + "Id": "beb8cd01f2b241f3b5745afe05ae89e1", + "Name": "str", + "Description": "A string made from the list of strings including the separator character.", + "UsingDefaultValue": false, + "Level": 2, + "UseLevels": false, + "KeepListStructure": false + } + ], + "Replication": "Auto", + "Description": "Concatenates multiple strings into a single string, inserting the given separator between each joined string.\n\nString.Join (separator: string, strings: string[]): string" + }, + { + "ConcreteType": "Dynamo.Graph.Nodes.CodeBlockNodeModel, DynamoCore", + "NodeType": "CodeBlockNode", + "Code": "\"\\r\\n\";", + "Id": "0b88ad5ce36b4c9dba8821eeca593696", + "Inputs": [], + "Outputs": [ + { + "Id": "817bef1728de4a8a8029b5aa96df0d55", + "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": "b175c5645ceb404ba731e5f70cf4d064", + "Inputs": [ + { + "Id": "0f84d6be9835448f980ed8f721716b6b", + "Name": "list", + "Description": "The list to map over.", + "UsingDefaultValue": false, + "Level": 2, + "UseLevels": false, + "KeepListStructure": false + }, + { + "Id": "0396b39b1f7a48ba827b8b28cf6b79b6", + "Name": "f(x)", + "Description": "The procedure used to map element", + "UsingDefaultValue": false, + "Level": 2, + "UseLevels": false, + "KeepListStructure": false + } + ], + "Outputs": [ + { + "Id": "095e71369080435c84661db3a410763e", + "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": "91ed8c5eb1d746258444a9ecf3ac23b3", + "Inputs": [ + { + "Id": "d520afe843674cea82d415855121017b", + "Name": "list", + "Description": "The list to map over.", + "UsingDefaultValue": false, + "Level": 2, + "UseLevels": false, + "KeepListStructure": false + }, + { + "Id": "ec251115daa54ffe9c465f02093c9f3f", + "Name": "f(x)", + "Description": "The procedure used to map element", + "UsingDefaultValue": false, + "Level": 2, + "UseLevels": false, + "KeepListStructure": false + } + ], + "Outputs": [ + { + "Id": "3b8b1444264c46bf9dbb729addcea80a", + "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.Input.StringInput, CoreNodeModels", + "NodeType": "StringInputNode", + "InputValue": "rtg", + "Id": "621247b0deaf45eb936c37fbdadf9e48", + "Inputs": [], + "Outputs": [ + { + "Id": "37650c59513e4ae6bb2be4b7e1f3c900", + "Name": "", + "Description": "String", + "UsingDefaultValue": false, + "Level": 2, + "UseLevels": false, + "KeepListStructure": false + } + ], + "Replication": "Disabled", + "Description": "Creates a string." + }, + { + "ConcreteType": "CoreNodeModels.Input.StringInput, CoreNodeModels", + "NodeType": "StringInputNode", + "InputValue": "RétegrendExtra", + "Id": "15eb28e520424aa6bf64b9ad0e15a234", + "Inputs": [], + "Outputs": [ + { + "Id": "c7136b66b6dd4a8fa683dc434dcfa965", + "Name": "", + "Description": "String", + "UsingDefaultValue": false, + "Level": 2, + "UseLevels": false, + "KeepListStructure": false + } + ], + "Replication": "Disabled", + "Description": "Creates a string." + }, + { + "ConcreteType": "CoreNodeModels.Input.StringInput, CoreNodeModels", + "NodeType": "StringInputNode", + "InputValue": "cm", + "Id": "ab00cdcd7d2247ada6deddb6bcebc23d", + "Inputs": [], + "Outputs": [ + { + "Id": "8184ac6f9a18453fba40c054d527e781", + "Name": "", + "Description": "String", + "UsingDefaultValue": false, + "Level": 2, + "UseLevels": false, + "KeepListStructure": false + } + ], + "Replication": "Disabled", + "Description": "Creates a string." + }, + { + "ConcreteType": "Dynamo.Graph.Nodes.CodeBlockNodeModel, DynamoCore", + "NodeType": "CodeBlockNode", + "Code": "\" \";", + "Id": "422f96429ad44e0db35a0506ad314993", + "Inputs": [], + "Outputs": [ + { + "Id": "32f7a88b7b6c49ecb50e67d27f902baa", + "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": "49c30eb71d3d42e28452535b32d4d674", + "Inputs": [ + { + "Id": "3b6ba59f51de4cc69b665149bfe75320", + "Name": "list", + "Description": "The list to map over.", + "UsingDefaultValue": false, + "Level": 2, + "UseLevels": false, + "KeepListStructure": false + }, + { + "Id": "281ce4c848e744cd8270b2fb26b82045", + "Name": "f(x)", + "Description": "The procedure used to map element", + "UsingDefaultValue": false, + "Level": 2, + "UseLevels": false, + "KeepListStructure": false + } + ], + "Outputs": [ + { + "Id": "217db0acffc842f79781e67cf4dd924b", + "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.DSVarArgFunction, DynamoCore", + "FunctionSignature": "DSCore.String.Join@string,string[]", + "FunctionType": "VariableArgument", + "NodeType": "FunctionNode", + "Id": "1ced7463a3974512bad1f98c73032009", + "Inputs": [ + { + "Id": "41a66035b9ba4defa43cfea344d7a682", + "Name": "separator", + "Description": "String to be inserted between joined strings.\n\nstring", + "UsingDefaultValue": false, + "Level": 2, + "UseLevels": false, + "KeepListStructure": false + }, + { + "Id": "8db129edb82a4febb11c6d3f54cb9476", + "Name": "string0", + "Description": "Strings to be joined into a single string.\n\nstring[]", + "UsingDefaultValue": false, + "Level": 1, + "UseLevels": true, + "KeepListStructure": false + }, + { + "Id": "3c4c1a35e9ac4178907ebbeb5b07ea79", + "Name": "string1", + "Description": "string[]", + "UsingDefaultValue": false, + "Level": 1, + "UseLevels": false, + "KeepListStructure": false + } + ], + "Outputs": [ + { + "Id": "18911e6f1f4c47d3b57400caa7593794", + "Name": "str", + "Description": "A string made from the list of strings including the separator character.", + "UsingDefaultValue": false, + "Level": 2, + "UseLevels": false, + "KeepListStructure": false + } + ], + "Replication": "Auto", + "Description": "Concatenates multiple strings into a single string, inserting the given separator between each joined string.\n\nString.Join (separator: string, strings: string[]): string" + }, + { + "ConcreteType": "CoreNodeModels.HigherOrder.Map, CoreNodeModels", + "NodeType": "ExtensionNode", + "Id": "0f43acb2229c460d8b80c1b1f30aae63", + "Inputs": [ + { + "Id": "6e8ea39cbc8442ee8b2c0f20d743b73e", + "Name": "list", + "Description": "The list to map over.", + "UsingDefaultValue": false, + "Level": 2, + "UseLevels": false, + "KeepListStructure": false + }, + { + "Id": "d47666810fa54d08983c5c9709d12ef0", + "Name": "f(x)", + "Description": "The procedure used to map element", + "UsingDefaultValue": false, + "Level": 2, + "UseLevels": false, + "KeepListStructure": false + } + ], + "Outputs": [ + { + "Id": "af64076c63194ec896d47c3f3f3f4ba0", + "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": "ad1457f3e5ae49209443d3892875a39d", + "Inputs": [ + { + "Id": "0181fcb833864ce78892bd05f2aae637", + "Name": "list", + "Description": "The list to map over.", + "UsingDefaultValue": false, + "Level": 2, + "UseLevels": false, + "KeepListStructure": false + }, + { + "Id": "7258b69fd43945a69fa2444f8c131c97", + "Name": "f(x)", + "Description": "The procedure used to map element", + "UsingDefaultValue": false, + "Level": 2, + "UseLevels": false, + "KeepListStructure": false + } + ], + "Outputs": [ + { + "Id": "47f1e9c7a2364ca0b8be7e7d505f461b", + "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.CodeBlockNodeModel, DynamoCore", + "NodeType": "CodeBlockNode", + "Code": "false;", + "Id": "4b69387bc7cd4a60b3205feb5e9d9df7", + "Inputs": [], + "Outputs": [ + { + "Id": "27f425403e174eef97d81f5fc68a55b6", + "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": "503d252d72bc4146907f3c2c3f827313", + "Inputs": [ + { + "Id": "338e7b32d2474e7e93cddd930e74531d", + "Name": "list", + "Description": "List to search in. If this argument is null, an empty list is returned.\n\nvar[]..[]", + "UsingDefaultValue": false, + "Level": 2, + "UseLevels": false, + "KeepListStructure": false + }, + { + "Id": "4c3ffa6424ab4c2bb618c71cdde4441a", + "Name": "item", + "Description": "Item to look for.\n\nvar", + "UsingDefaultValue": false, + "Level": 2, + "UseLevels": false, + "KeepListStructure": false + } + ], + "Outputs": [ + { + "Id": "c336deccce334ad3b2b4e4da74c4d147", + "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.RemoveItemAtIndex@var[]..[],int[]", + "Id": "83abfc04d21c44058b822646217811ba", + "Inputs": [ + { + "Id": "991266b4b02446c585dff629a45a9613", + "Name": "list", + "Description": "List to remove an item or items from.\n\nvar[]..[]", + "UsingDefaultValue": false, + "Level": 2, + "UseLevels": true, + "KeepListStructure": true + }, + { + "Id": "591c228238d94492b60acf964d613c0c", + "Name": "indices", + "Description": "Index or indices of the item(s) to be removed.\n\nint[]", + "UsingDefaultValue": false, + "Level": 2, + "UseLevels": true, + "KeepListStructure": false + } + ], + "Outputs": [ + { + "Id": "a6deb25017884d8b95c867b2423554af", + "Name": "list", + "Description": "List with items removed.", + "UsingDefaultValue": false, + "Level": 2, + "UseLevels": false, + "KeepListStructure": false + } + ], + "Replication": "Auto", + "Description": "Removes an item from the given list at the specified index.\n\nList.RemoveItemAtIndex (list: var[]..[], indices: int[]): var[]..[]" + }, + { + "ConcreteType": "Dynamo.Graph.Nodes.ZeroTouch.DSFunction, DynamoCore", + "NodeType": "FunctionNode", + "FunctionSignature": "DSCore.List.RemoveItemAtIndex@var[]..[],int[]", + "Id": "ec852268f491434498eacea9a982a429", + "Inputs": [ + { + "Id": "6dfe19ae7e2d4bd9a949b39fd23e2ade", + "Name": "list", + "Description": "List to remove an item or items from.\n\nvar[]..[]", + "UsingDefaultValue": false, + "Level": 2, + "UseLevels": true, + "KeepListStructure": true + }, + { + "Id": "df59a7cc41a441da8dc24b1393ed5c8c", + "Name": "indices", + "Description": "Index or indices of the item(s) to be removed.\n\nint[]", + "UsingDefaultValue": false, + "Level": 2, + "UseLevels": true, + "KeepListStructure": false + } + ], + "Outputs": [ + { + "Id": "8fc347a03d1b4ed5b6e897817b0b5167", + "Name": "list", + "Description": "List with items removed.", + "UsingDefaultValue": false, + "Level": 2, + "UseLevels": false, + "KeepListStructure": false + } + ], + "Replication": "Auto", + "Description": "Removes an item from the given list at the specified index.\n\nList.RemoveItemAtIndex (list: var[]..[], indices: int[]): var[]..[]" + }, + { + "ConcreteType": "Dynamo.Graph.Nodes.ZeroTouch.DSFunction, DynamoCore", + "NodeType": "FunctionNode", + "FunctionSignature": "Revit.Elements.Element.GetParameterValueByName@string", + "Id": "2e941b2a6c5e485b81c3d418c3b303af", + "Inputs": [ + { + "Id": "2c8048ad36f74090b7fb779f0457c8ca", + "Name": "element", + "Description": "Revit.Elements.Element", + "UsingDefaultValue": false, + "Level": 2, + "UseLevels": false, + "KeepListStructure": false + }, + { + "Id": "c62e793dc4f843b49b8a6fda19e7525e", + "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": "9aedaa90c8ff4e89ad2eeb846967cc12", + "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": "CoreNodeModels.HigherOrder.Map, CoreNodeModels", + "NodeType": "ExtensionNode", + "Id": "b436b3c4830347beb2c10b60c15d5fcd", + "Inputs": [ + { + "Id": "89ee39ba79634f3d955625226e4648ae", + "Name": "list", + "Description": "The list to map over.", + "UsingDefaultValue": false, + "Level": 2, + "UseLevels": false, + "KeepListStructure": false + }, + { + "Id": "7a0cd07a27524e4e95a0b6d3149f44da", + "Name": "f(x)", + "Description": "The procedure used to map element", + "UsingDefaultValue": false, + "Level": 2, + "UseLevels": false, + "KeepListStructure": false + } + ], + "Outputs": [ + { + "Id": "582de39e17d648b3b094aaff922c31a6", + "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.DSVarArgFunction, DynamoCore", + "FunctionSignature": "DSCore.String.Split@string,string[]", + "FunctionType": "VariableArgument", + "NodeType": "FunctionNode", + "Id": "15c7dc09beb0494e8298057502481ba1", + "Inputs": [ + { + "Id": "9f78a51b150e4899b24a08563014719c", + "Name": "str", + "Description": "String to split up.\n\nstring", + "UsingDefaultValue": false, + "Level": 2, + "UseLevels": false, + "KeepListStructure": false + }, + { + "Id": "a3716262e88d49ffb9565cd5d676aadd", + "Name": "separater0", + "Description": "Strings that, if present, determine the end and start of a split.\n\nstring[]", + "UsingDefaultValue": false, + "Level": 2, + "UseLevels": false, + "KeepListStructure": false + } + ], + "Outputs": [ + { + "Id": "2e34355c83314d4f86f84a965006eaa0", + "Name": "strings", + "Description": "List of strings made from the input string.", + "UsingDefaultValue": false, + "Level": 2, + "UseLevels": false, + "KeepListStructure": false + } + ], + "Replication": "Auto", + "Description": "Divides a single string into a list of strings, with divisions determined by the given separater strings.\n\nString.Split (str: string, separaters: string[]): string[]" + }, + { + "ConcreteType": "Dynamo.Graph.Nodes.CodeBlockNodeModel, DynamoCore", + "NodeType": "CodeBlockNode", + "Code": "\"\\r\\n\";", + "Id": "7102e328f567432e9eee4d66acf67d49", + "Inputs": [], + "Outputs": [ + { + "Id": "2b91fea1d7ca419f8f3f53f145633ceb", + "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.Input.BoolSelector, CoreNodeModels", + "NodeType": "BooleanInputNode", + "InputValue": true, + "Id": "b40ad679b7364a9aa6d9cae73caf8b2a", + "Inputs": [], + "Outputs": [ + { + "Id": "a73be5de3c4a41f49381aa3158cc786c", + "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": "09432b4a59a14668983601dbb61cb5d7", + "Inputs": [ + { + "Id": "9855a4f95f5f41fcbd67e967d9fea14a", + "Name": "test", + "Description": "Test block", + "UsingDefaultValue": false, + "Level": 2, + "UseLevels": false, + "KeepListStructure": false + }, + { + "Id": "07e5f7fd87a6462293dfac85d25bb2c1", + "Name": "true", + "Description": "True block", + "UsingDefaultValue": false, + "Level": 2, + "UseLevels": false, + "KeepListStructure": false + }, + { + "Id": "65eeec342f654c6c9afb9dd47969417e", + "Name": "false", + "Description": "False block", + "UsingDefaultValue": false, + "Level": 2, + "UseLevels": false, + "KeepListStructure": false + } + ], + "Outputs": [ + { + "Id": "42866cc39f674091bd25e835e46d6f37", + "Name": "result", + "Description": "result", + "UsingDefaultValue": false, + "Level": 2, + "UseLevels": false, + "KeepListStructure": false + } + ], + "Replication": "Disabled", + "Description": "Conditional statement" + }, + { + "ConcreteType": "Dynamo.Graph.Nodes.CustomNodes.Function, DynamoCore", + "FunctionSignature": "dda914fd-aaf1-4ff4-a80c-dab136aa16cc", + "FunctionType": "Graph", + "NodeType": "FunctionNode", + "Id": "6588f325843746e8a94990f6bc23d9ed", + "Inputs": [ + { + "Id": "6ccd927c32b54f28b16bda63e24dd01a", + "Name": "list", + "Description": "var[]..[]", + "UsingDefaultValue": false, + "Level": 2, + "UseLevels": false, + "KeepListStructure": false + }, + { + "Id": "eefa34e022494bc69bc1087c79fa708f", + "Name": "replacement", + "Description": "var[]..[]", + "UsingDefaultValue": false, + "Level": 2, + "UseLevels": false, + "KeepListStructure": false + }, + { + "Id": "edf057a05edb4b59a5d5c7f0c8935987", + "Name": "countUnit", + "Description": "var[]..[]", + "UsingDefaultValue": false, + "Level": 2, + "UseLevels": false, + "KeepListStructure": false + } + ], + "Outputs": [ + { + "Id": "eebd2d36d78b45a495ad7ba12cab1d6f", + "Name": "allReplaced", + "Description": "return value", + "UsingDefaultValue": false, + "Level": 2, + "UseLevels": false, + "KeepListStructure": false + }, + { + "Id": "069b95c5b81e4de7af71f4f800f8a145", + "Name": "firstCounted", + "Description": "return value", + "UsingDefaultValue": false, + "Level": 2, + "UseLevels": false, + "KeepListStructure": false + }, + { + "Id": "66bbb78426604b789d43c660db65c116", + "Name": "firstOriginal", + "Description": "return value", + "UsingDefaultValue": false, + "Level": 2, + "UseLevels": false, + "KeepListStructure": false + } + ], + "Replication": "Auto", + "Description": "Replace tlements which are the same in a list of lists" + }, + { + "ConcreteType": "Dynamo.Graph.Nodes.CodeBlockNodeModel, DynamoCore", + "NodeType": "CodeBlockNode", + "Code": "false;", + "Id": "9b3d5bbd6fae4209ac37d6028d0430a4", + "Inputs": [], + "Outputs": [ + { + "Id": "ce63b143e9f84d5285fe499a7d88ebde", + "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.CustomNodes.Function, DynamoCore", + "FunctionSignature": "2344df3c-35d0-4ee4-b20a-6a7259317cfc", + "FunctionType": "Graph", + "NodeType": "FunctionNode", + "Id": "78b04d58f99c49c5a28a0b3f728c2623", + "Inputs": [ + { + "Id": "0acfa343ab3b4b2ea874d8425f3b8430", + "Name": "list", + "Description": "var[]..[]", + "UsingDefaultValue": false, + "Level": 2, + "UseLevels": false, + "KeepListStructure": false + }, + { + "Id": "3383a645ea4740f7943a0359b727a4c2", + "Name": "searchFor", + "Description": "var[]..[]", + "UsingDefaultValue": false, + "Level": 2, + "UseLevels": false, + "KeepListStructure": false + }, + { + "Id": "142fba2ee46c441b8675628990fecc49", + "Name": "replacement", + "Description": "var[]..[]", + "UsingDefaultValue": false, + "Level": 2, + "UseLevels": false, + "KeepListStructure": false + }, + { + "Id": "7b9287984961431ea174dce668cbb59c", + "Name": "countUnit", + "Description": "var[]..[]", + "UsingDefaultValue": false, + "Level": 2, + "UseLevels": false, + "KeepListStructure": false + } + ], + "Outputs": [ + { + "Id": "ac48890b6332484683363216fd910b3c", + "Name": "replacedList", + "Description": "return value", + "UsingDefaultValue": false, + "Level": 2, + "UseLevels": false, + "KeepListStructure": false + }, + { + "Id": "33f126bb8ff14b1eafc80c44a95c2ca8", + "Name": "firstReplacedList", + "Description": "return value", + "UsingDefaultValue": false, + "Level": 2, + "UseLevels": false, + "KeepListStructure": false + } + ], + "Replication": "Auto", + "Description": "Replace same elements follow each other" + }, + { + "ConcreteType": "Dynamo.Graph.Nodes.CodeBlockNodeModel, DynamoCore", + "NodeType": "CodeBlockNode", + "Code": "\"0\";\ntrue;\n\"\";", + "Id": "629138f0cea242d483cf747d8e9c69a1", + "Inputs": [], + "Outputs": [ + { + "Id": "816f415e8f234578b6d00f887c73317e", + "Name": "", + "Description": "Value of expression at line 1", + "UsingDefaultValue": false, + "Level": 2, + "UseLevels": false, + "KeepListStructure": false + }, + { + "Id": "04139fdd137341b683e62a4a49a5da89", + "Name": "", + "Description": "Value of expression at line 2", + "UsingDefaultValue": false, + "Level": 2, + "UseLevels": false, + "KeepListStructure": false + }, + { + "Id": "5867d3ad8d7c435a9294c8a48c98c07d", + "Name": "", + "Description": "Value of expression at line 3", + "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.Object.Type@var", + "Id": "0b864c2b61a744e294fd0316e867cfd9", + "Inputs": [ + { + "Id": "76153f7f4d3447b8b9a07fecca1815af", + "Name": "obj", + "Description": "An object.\n\nvar", + "UsingDefaultValue": false, + "Level": 2, + "UseLevels": false, + "KeepListStructure": false + } + ], + "Outputs": [ + { + "Id": "7e55256a35b94270b613a4ce905b6549", + "Name": "string", + "Description": "Type of object.", + "UsingDefaultValue": false, + "Level": 2, + "UseLevels": false, + "KeepListStructure": false + } + ], + "Replication": "Auto", + "Description": "Returns the type of object represented as string.\n\nObject.Type (obj: var): string" + }, + { + "ConcreteType": "Dynamo.Graph.Nodes.CodeBlockNodeModel, DynamoCore", + "NodeType": "CodeBlockNode", + "Code": "\"System.Boolean\";", + "Id": "ef140c46efcf45ea9e60e9c7212583ae", + "Inputs": [], + "Outputs": [ + { + "Id": "db1f858d21634efcb075bffa9651dcd3", + "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": "==@var[]..[],var[]..[]", + "Id": "3865c5c97c3e4751a9a0cd6a329d94b8", + "Inputs": [ + { + "Id": "d2a3cb329d194aef9184d336af895007", + "Name": "x", + "Description": "x value.\n\nvar[]..[]", + "UsingDefaultValue": false, + "Level": 1, + "UseLevels": false, + "KeepListStructure": false + }, + { + "Id": "53d44acf80ce45fbb45f78f4c20dc885", + "Name": "y", + "Description": "y value.\n\nvar[]..[]", + "UsingDefaultValue": false, + "Level": 2, + "UseLevels": false, + "KeepListStructure": false + } + ], + "Outputs": [ + { + "Id": "94bdf26337ae40659d6145681873b599", + "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.Object.Type@var", + "Id": "3e32ee6686f1457a973dd529fb3b52ac", + "Inputs": [ + { + "Id": "dadeb29a71824877b181cd6b60a6d0eb", + "Name": "obj", + "Description": "An object.\n\nvar", + "UsingDefaultValue": false, + "Level": 2, + "UseLevels": false, + "KeepListStructure": false + } + ], + "Outputs": [ + { + "Id": "fae5a5a38be641088c94e8f3d4501940", + "Name": "string", + "Description": "Type of object.", + "UsingDefaultValue": false, + "Level": 2, + "UseLevels": false, + "KeepListStructure": false + } + ], + "Replication": "Auto", + "Description": "Returns the type of object represented as string.\n\nObject.Type (obj: var): string" + }, + { + "ConcreteType": "Dynamo.Graph.Nodes.CodeBlockNodeModel, DynamoCore", + "NodeType": "CodeBlockNode", + "Code": "\"System.Boolean\";", + "Id": "df3d3a0ab43b445dbc57cb719ea927f6", + "Inputs": [], + "Outputs": [ + { + "Id": "0a7ac0f3ca634b4db185add2e8abb076", + "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": "==@var[]..[],var[]..[]", + "Id": "0b5a44c37d6d4ae9a95d7bb67f105569", + "Inputs": [ + { + "Id": "774d47ef81d448bab9cd14816b03afb0", + "Name": "x", + "Description": "x value.\n\nvar[]..[]", + "UsingDefaultValue": false, + "Level": 2, + "UseLevels": false, + "KeepListStructure": false + }, + { + "Id": "7311339b3aa74d928a191fb47c28e210", + "Name": "y", + "Description": "y value.\n\nvar[]..[]", + "UsingDefaultValue": false, + "Level": 2, + "UseLevels": false, + "KeepListStructure": false + } + ], + "Outputs": [ + { + "Id": "c68fad14a3294f1db844d8a8340dce02", + "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.CodeBlockNodeModel, DynamoCore", + "NodeType": "CodeBlockNode", + "Code": "a&&b;", + "Id": "798bfaa5a6c54cfcb42623d93845b9b8", + "Inputs": [ + { + "Id": "35e40cbca3154dce8c8db5be4db52fb6", + "Name": "a", + "Description": "a", + "UsingDefaultValue": false, + "Level": 2, + "UseLevels": false, + "KeepListStructure": false + }, + { + "Id": "1f0b69924b544843b0ea5bd5f22d89f3", + "Name": "b", + "Description": "b", + "UsingDefaultValue": false, + "Level": 2, + "UseLevels": false, + "KeepListStructure": false + } + ], + "Outputs": [ + { + "Id": "b386de337df4421c96fa9262ada8751b", + "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.Logic.If, CoreNodeModels", + "NodeType": "ExtensionNode", + "Id": "4850767db692463980cf426901283142", + "Inputs": [ + { + "Id": "3f7a6d5df44248efa63d788f89bb666e", + "Name": "test", + "Description": "Test block", + "UsingDefaultValue": false, + "Level": 2, + "UseLevels": false, + "KeepListStructure": false + }, + { + "Id": "d2e912afc48447579d156497d7673f54", + "Name": "true", + "Description": "True block", + "UsingDefaultValue": false, + "Level": 2, + "UseLevels": false, + "KeepListStructure": false + }, + { + "Id": "0ede402a52724c5d872fede66a7dd088", + "Name": "false", + "Description": "False block", + "UsingDefaultValue": false, + "Level": 2, + "UseLevels": false, + "KeepListStructure": false + } + ], + "Outputs": [ + { + "Id": "23399338d87b492da28e036babcdbe78", + "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": "\"1 \" +a;", + "Id": "8d741657c4a84e1d91af822f4ba009c9", + "Inputs": [ + { + "Id": "222a18fbe50544b2a6c07189f300f02f", + "Name": "a", + "Description": "a", + "UsingDefaultValue": false, + "Level": 2, + "UseLevels": false, + "KeepListStructure": false + } + ], + "Outputs": [ + { + "Id": "8f3c00375ff64bf6800aee934334e526", + "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": "Test@@-1 ? a: b@-1;", + "Id": "43df727a9f544746bfa0cabd75be0368", + "Inputs": [ + { + "Id": "99b9ec21c34b4c31ab3e7910893a22e9", + "Name": "Test", + "Description": "Test", + "UsingDefaultValue": false, + "Level": 2, + "UseLevels": false, + "KeepListStructure": false + }, + { + "Id": "ce216b5ccbb745ea8c5cc23a69518c95", + "Name": "a", + "Description": "a", + "UsingDefaultValue": false, + "Level": 2, + "UseLevels": false, + "KeepListStructure": false + }, + { + "Id": "dae74a682ac04cacb267cdb5b183148a", + "Name": "b", + "Description": "b", + "UsingDefaultValue": false, + "Level": 2, + "UseLevels": false, + "KeepListStructure": false + } + ], + "Outputs": [ + { + "Id": "62ef523e26ac4d6888036c8f30b2b682", + "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": "PythonNodeModels.PythonNode, PythonNodeModels", + "NodeType": "PythonScriptNode", + "Code": "# Enable Python support and load DesignScript library\r\nimport clr\r\nclr.AddReference('ProtoGeometry')\r\nfrom Autodesk.DesignScript.Geometry import *\r\n\r\n# The inputs to this node will be stored as a list in the IN variables.\r\nin_list = IN[0]\r\nout_list = []\r\naboveLayers = []\r\nvarWidth = []\r\nbelowLayers = []\r\nfor elems in in_list:\r\n\tif elems:\r\n\t\t#out_list.append(elems)\r\n\t\tstatus = \"start\"\r\n\t\tsepnumber = 0\r\n\t\tseplocation = []\r\n\r\n\t\t# count separators\r\n\t\tfor num, line in enumerate(elems):\r\n\t\t\tif line == \"---\":\r\n\t\t\t\tsepnumber = sepnumber + 1 \r\n\t\t\t\tseplocation.append(num)\r\n\t\t\r\n\t\tif sepnumber == 1 and seplocation[0] == 0:\r\n\t\t\tbelowLayers.append(elems[1:])\r\n\t\t\taboveLayers.append(False)\r\n\t\t\tvarWidth.append(False)\r\n\t\telif sepnumber == 1:\r\n\t\t\taboveLayers.append(elems[:seplocation[0]])\r\n\t\t\tvarWidth.append(False)\r\n\t\t\tbelowLayers.append(False)\r\n\t\telif sepnumber == 2:\r\n\t\t\taboveLayers.append(elems[:seplocation[0]])\r\n\t\t\tbelowLayers.append(elems[seplocation[1]+1:])\r\n\t\t\tvarWidth.append(elems[seplocation[0]+1:seplocation[1]])\r\n\t\telse:\r\n\t\t\taboveLayers.append(False)\r\n\t\t\tvarWidth.append(False)\r\n\t\t\tbelowLayers.append(False)\r\n\t\t\t\r\n\t\t\t\r\n\r\n\telse:\r\n\t\taboveLayers.append(False)\r\n\t\tvarWidth.append(False)\r\n\t\tbelowLayers.append(False)\r\n\r\nout_list.extend((aboveLayers, varWidth, belowLayers))\r\n\r\n\r\n# Place your code below this line\r\n\r\n# Assign your output to the OUT variable.\r\nOUT = out_list", + "VariableInputPorts": true, + "Id": "ff5e666de63640dab15350200fb37058", + "Inputs": [ + { + "Id": "8a29a73c33bf40cfb814a294d1104c20", + "Name": "IN[0]", + "Description": "Input #0", + "UsingDefaultValue": false, + "Level": 2, + "UseLevels": false, + "KeepListStructure": false + } + ], + "Outputs": [ + { + "Id": "422f5b0a9a8648d4b7edd39a1a605585", + "Name": "OUT", + "Description": "Result of the python script", + "UsingDefaultValue": false, + "Level": 2, + "UseLevels": false, + "KeepListStructure": false + } + ], + "Replication": "Disabled", + "Description": "Runs an embedded IronPython script." + }, + { + "ConcreteType": "Dynamo.Graph.Nodes.CodeBlockNodeModel, DynamoCore", + "NodeType": "CodeBlockNode", + "Code": "//aboveLayers:\na[0];\n//varWidths:\na[1];\n//belowlayers:\na[2];", + "Id": "e19e7867b2ff4490b2507ffe3fc45f1b", + "Inputs": [ + { + "Id": "d03534096fd84ae7a7d185044fbeebd5", + "Name": "a", + "Description": "a", + "UsingDefaultValue": false, + "Level": 2, + "UseLevels": false, + "KeepListStructure": false + } + ], + "Outputs": [ + { + "Id": "b40fae9281c84c2d87616265e7dc33a9", + "Name": "", + "Description": "Value of expression at line 2", + "UsingDefaultValue": false, + "Level": 2, + "UseLevels": false, + "KeepListStructure": false + }, + { + "Id": "1a0d005783e14f168d781d47ec7f4c3f", + "Name": "", + "Description": "Value of expression at line 4", + "UsingDefaultValue": false, + "Level": 2, + "UseLevels": false, + "KeepListStructure": false + }, + { + "Id": "9ef565ce14b948878e64e44ee675ff9a", + "Name": "", + "Description": "Value of expression at line 6", + "UsingDefaultValue": false, + "Level": 2, + "UseLevels": false, + "KeepListStructure": false + } + ], + "Replication": "Disabled", + "Description": "Allows for DesignScript code to be authored directly" + }, + { + "ConcreteType": "Dynamo.Graph.Nodes.ZeroTouch.DSVarArgFunction, DynamoCore", + "FunctionSignature": "DSCore.String.Split@string,string[]", + "FunctionType": "VariableArgument", + "NodeType": "FunctionNode", + "Id": "ce6b57d90267434dba0dd97d2fa854a5", + "Inputs": [ + { + "Id": "977f4a71802341a79bb4751d38fadc67", + "Name": "str", + "Description": "String to split up.\n\nstring", + "UsingDefaultValue": false, + "Level": 1, + "UseLevels": true, + "KeepListStructure": true + }, + { + "Id": "0994fe4a3dd941d286a6226d96fe4d36", + "Name": "separater0", + "Description": "Strings that, if present, determine the end and start of a split.\n\nstring[]", + "UsingDefaultValue": false, + "Level": 2, + "UseLevels": false, + "KeepListStructure": false + } + ], + "Outputs": [ + { + "Id": "7ab50d521af24055b3b381043206e1b5", + "Name": "strings", + "Description": "List of strings made from the input string.", + "UsingDefaultValue": false, + "Level": 2, + "UseLevels": false, + "KeepListStructure": false + } + ], + "Replication": "Auto", + "Description": "Divides a single string into a list of strings, with divisions determined by the given separater strings.\n\nString.Split (str: string, separaters: string[]): string[]" + }, + { + "ConcreteType": "Dynamo.Graph.Nodes.CodeBlockNodeModel, DynamoCore", + "NodeType": "CodeBlockNode", + "Code": "\"|\";", + "Id": "9607f4505da4425880a5c203e2f6575a", + "Inputs": [], + "Outputs": [ + { + "Id": "b3d98f3501384bba99665f129bee4fe7", + "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": "\"|\";", + "Id": "a8b0ecbad05345158a4a0c28f3b0cc35", + "Inputs": [], + "Outputs": [ + { + "Id": "9f7fd8ce8c994992862b7f32ddb641f3", + "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.DSVarArgFunction, DynamoCore", + "FunctionSignature": "DSCore.String.Split@string,string[]", + "FunctionType": "VariableArgument", + "NodeType": "FunctionNode", + "Id": "7aa84638faf240a695d0efb22b2a9d24", + "Inputs": [ + { + "Id": "6d3f546559b34ccf8d39b8405b862d11", + "Name": "str", + "Description": "String to split up.\n\nstring", + "UsingDefaultValue": false, + "Level": 1, + "UseLevels": true, + "KeepListStructure": true + }, + { + "Id": "8189d12152544487bdf9b5c9f803ef2c", + "Name": "separater0", + "Description": "Strings that, if present, determine the end and start of a split.\n\nstring[]", + "UsingDefaultValue": false, + "Level": 2, + "UseLevels": false, + "KeepListStructure": false + } + ], + "Outputs": [ + { + "Id": "df3ecb3abc394a4b9dadecbeefd1542f", + "Name": "strings", + "Description": "List of strings made from the input string.", + "UsingDefaultValue": false, + "Level": 2, + "UseLevels": false, + "KeepListStructure": false + } + ], + "Replication": "Auto", + "Description": "Divides a single string into a list of strings, with divisions determined by the given separater strings.\n\nString.Split (str: string, separaters: string[]): string[]" + }, + { + "ConcreteType": "Dynamo.Graph.Nodes.CodeBlockNodeModel, DynamoCore", + "NodeType": "CodeBlockNode", + "Code": "\"var:\";", + "Id": "7c232e284ea54fc59548b75d9094ca50", + "Inputs": [], + "Outputs": [ + { + "Id": "117405392f0b4da384566012a4c490a3", + "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.DSVarArgFunction, DynamoCore", + "FunctionSignature": "DSCore.String.Split@string,string[]", + "FunctionType": "VariableArgument", + "NodeType": "FunctionNode", + "Id": "0adf919d36ad427daeca55500d1abf9a", + "Inputs": [ + { + "Id": "838d0c4df6c04a37806bd5347c5e3822", + "Name": "str", + "Description": "String to split up.\n\nstring", + "UsingDefaultValue": false, + "Level": 1, + "UseLevels": true, + "KeepListStructure": true + }, + { + "Id": "c26dbfde341e40e5a72f0923e67fb7a1", + "Name": "separater0", + "Description": "Strings that, if present, determine the end and start of a split.\n\nstring[]", + "UsingDefaultValue": false, + "Level": 2, + "UseLevels": false, + "KeepListStructure": false + } + ], + "Outputs": [ + { + "Id": "3376d982d578457f8f81bf858e2ab473", + "Name": "strings", + "Description": "List of strings made from the input string.", + "UsingDefaultValue": false, + "Level": 2, + "UseLevels": false, + "KeepListStructure": false + } + ], + "Replication": "Auto", + "Description": "Divides a single string into a list of strings, with divisions determined by the given separater strings.\n\nString.Split (str: string, separaters: string[]): string[]" + }, + { + "ConcreteType": "Dynamo.Graph.Nodes.ZeroTouch.DSFunction, DynamoCore", + "NodeType": "FunctionNode", + "FunctionSignature": "DSCore.List.FirstItem@var[]..[]", + "Id": "38cd2e70009e4aaabe5c83b3491cae0e", + "Inputs": [ + { + "Id": "7a85f8b790e6422ea542047ecf0a02c0", + "Name": "list", + "Description": "List to get the first item from.\n\nvar[]..[]", + "UsingDefaultValue": false, + "Level": 1, + "UseLevels": false, + "KeepListStructure": false + } + ], + "Outputs": [ + { + "Id": "2912cffe7eba440b927bb63beff1ad2e", + "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": "ba9bf7d57eee4345946adf349761b5b6", + "Inputs": [ + { + "Id": "6a68432958544d18b98b633244e0841b", + "Name": "list", + "Description": "The list to map over.", + "UsingDefaultValue": false, + "Level": 2, + "UseLevels": false, + "KeepListStructure": false + }, + { + "Id": "423d2441f04246939974f326d0834828", + "Name": "f(x)", + "Description": "The procedure used to map element", + "UsingDefaultValue": false, + "Level": 2, + "UseLevels": false, + "KeepListStructure": false + } + ], + "Outputs": [ + { + "Id": "3a0b525ccae94ac5aca43c7ac16a30e2", + "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": "98cb4f9642dc45f3b6dc38dcbc04dcd6", + "Inputs": [ + { + "Id": "50cd38c78f414820ab14c0bc95a1b4f1", + "Name": "list", + "Description": "The list to map over.", + "UsingDefaultValue": false, + "Level": 2, + "UseLevels": false, + "KeepListStructure": false + }, + { + "Id": "ec59afd0351142fcb06c818c3eee0bd4", + "Name": "f(x)", + "Description": "The procedure used to map element", + "UsingDefaultValue": false, + "Level": 2, + "UseLevels": false, + "KeepListStructure": false + } + ], + "Outputs": [ + { + "Id": "f0a89885f0ef431c9517f012211f7ac1", + "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": "286c520aafca44fba31aa30159408c26", + "Inputs": [ + { + "Id": "492ca7f976494fb6b798a182001fb157", + "Name": "list", + "Description": "List to get the first item from.\n\nvar[]..[]", + "UsingDefaultValue": false, + "Level": 2, + "UseLevels": false, + "KeepListStructure": false + } + ], + "Outputs": [ + { + "Id": "6e07ea29b423452482d5b5742f9862a1", + "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": "3907f415d327494281ba612cfe3908cf", + "Inputs": [ + { + "Id": "99167fc1288e4265b075066512550e00", + "Name": "list", + "Description": "The list to map over.", + "UsingDefaultValue": false, + "Level": 2, + "UseLevels": false, + "KeepListStructure": false + }, + { + "Id": "0af202cc7e054aba88f1d3ba7cf791ad", + "Name": "f(x)", + "Description": "The procedure used to map element", + "UsingDefaultValue": false, + "Level": 2, + "UseLevels": false, + "KeepListStructure": false + } + ], + "Outputs": [ + { + "Id": "04bc8e7ded4c474ca9b92ccbdb9b74a8", + "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": "47ed90debf664862b9738e2595669248", + "Inputs": [ + { + "Id": "2c3fa11d82f8457c94486e5d62fc3a53", + "Name": "list", + "Description": "The list to map over.", + "UsingDefaultValue": false, + "Level": 2, + "UseLevels": false, + "KeepListStructure": false + }, + { + "Id": "2230ec1ded344d598898b1b30d155c3b", + "Name": "f(x)", + "Description": "The procedure used to map element", + "UsingDefaultValue": false, + "Level": 2, + "UseLevels": false, + "KeepListStructure": false + } + ], + "Outputs": [ + { + "Id": "d1e314b3cb544e0d92689e7eea3e495d", + "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.LastItem@var[]..[]", + "Id": "740979aff738404a994a3f3e5850b125", + "Inputs": [ + { + "Id": "e3a08ebdfd674e2696032a6efe1e9822", + "Name": "list", + "Description": "List to get the last item of.\n\nvar[]..[]", + "UsingDefaultValue": false, + "Level": 2, + "UseLevels": false, + "KeepListStructure": false + } + ], + "Outputs": [ + { + "Id": "d97d062b37a74ee3b49e2026a50d8f44", + "Name": "last", + "Description": "Last item in the list.", + "UsingDefaultValue": false, + "Level": 2, + "UseLevels": false, + "KeepListStructure": false + } + ], + "Replication": "Auto", + "Description": "Retrieves the last item in a list.\n\nList.LastItem (list: var[]..[]): var[]..[]" + }, + { + "ConcreteType": "CoreNodeModels.HigherOrder.Map, CoreNodeModels", + "NodeType": "ExtensionNode", + "Id": "18a53fc31d5b4db2aaf7d45c1da62054", + "Inputs": [ + { + "Id": "70179dd680fe40eba9b4bf0173437dc2", + "Name": "list", + "Description": "The list to map over.", + "UsingDefaultValue": false, + "Level": 2, + "UseLevels": false, + "KeepListStructure": false + }, + { + "Id": "782e51ac2aaf42e29e1e493c3192fb60", + "Name": "f(x)", + "Description": "The procedure used to map element", + "UsingDefaultValue": false, + "Level": 2, + "UseLevels": false, + "KeepListStructure": false + } + ], + "Outputs": [ + { + "Id": "ace584b0263a4ed9920f4c056e7af222", + "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": "189ca5ee14344044b178f8e3080a304f", + "Inputs": [ + { + "Id": "92834c3f59e24892a6c884024c7fe86e", + "Name": "list", + "Description": "The list to map over.", + "UsingDefaultValue": false, + "Level": 2, + "UseLevels": false, + "KeepListStructure": false + }, + { + "Id": "ef5ff3c0bb8643aa8074600691d04406", + "Name": "f(x)", + "Description": "The procedure used to map element", + "UsingDefaultValue": false, + "Level": 2, + "UseLevels": false, + "KeepListStructure": false + } + ], + "Outputs": [ + { + "Id": "352c9cf37fb540f1817ab958edcf41ce", + "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.LastItem@var[]..[]", + "Id": "017b9ee6c6eb451fb78483386e5caa06", + "Inputs": [ + { + "Id": "45113de7c4b44ff6aa70d82f793fd8d7", + "Name": "list", + "Description": "List to get the last item of.\n\nvar[]..[]", + "UsingDefaultValue": false, + "Level": 2, + "UseLevels": false, + "KeepListStructure": false + } + ], + "Outputs": [ + { + "Id": "c7f763cbe6324cb4818cee3b844167a7", + "Name": "last", + "Description": "Last item in the list.", + "UsingDefaultValue": false, + "Level": 2, + "UseLevels": false, + "KeepListStructure": false + } + ], + "Replication": "Auto", + "Description": "Retrieves the last item in a list.\n\nList.LastItem (list: var[]..[]): var[]..[]" + }, + { + "ConcreteType": "CoreNodeModels.HigherOrder.Map, CoreNodeModels", + "NodeType": "ExtensionNode", + "Id": "397b9c2f854e4d4e82a4fcab9e104af4", + "Inputs": [ + { + "Id": "5ab97cab34884f9f8fdc9c9790635ac9", + "Name": "list", + "Description": "The list to map over.", + "UsingDefaultValue": false, + "Level": 2, + "UseLevels": false, + "KeepListStructure": false + }, + { + "Id": "a4b62baa4e874a3ea5dbfd0559d55a5e", + "Name": "f(x)", + "Description": "The procedure used to map element", + "UsingDefaultValue": false, + "Level": 2, + "UseLevels": false, + "KeepListStructure": false + } + ], + "Outputs": [ + { + "Id": "e82b36791d2b40ffaddddc22a2439d59", + "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": "ce507d7daa364ca2ad9b534615926f12", + "Inputs": [ + { + "Id": "3e5a793830274f2d9617883e33ef9edb", + "Name": "list", + "Description": "The list to map over.", + "UsingDefaultValue": false, + "Level": 2, + "UseLevels": false, + "KeepListStructure": false + }, + { + "Id": "3383352758bd4aa0b2ea6122c89c7abd", + "Name": "f(x)", + "Description": "The procedure used to map element", + "UsingDefaultValue": false, + "Level": 2, + "UseLevels": false, + "KeepListStructure": false + } + ], + "Outputs": [ + { + "Id": "c878bbcf471a41d1bc91f963943f4155", + "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." + } + ], + "Connectors": [ + { + "Start": "ac4bb0ca01a94a0c8cbbac7a7b6a50d3", + "End": "92f6172d52fc4447ba1746e1da0ee53e", + "Id": "a2789b63cd844405ac92d2b98f842b0f" + }, + { + "Start": "05c106e4eeef415999d1f7a3867f1f38", + "End": "7e4f7e4e0d6e49b3baccfbae727e5052", + "Id": "cf86a48329fa477497443bb5ef2bbb6f" + }, + { + "Start": "a484481af9504368b80d10ecaf10be7a", + "End": "16ae5a247abd4105a80ee38b5840df9a", + "Id": "d344ca6864b64c9eba0a1d77ccd44fbb" + }, + { + "Start": "2d039e60f7f644d0b14022e5606ed901", + "End": "72fa96b47b294e00ab50fe73764f9d78", + "Id": "a3ea8cbed88d4f88b69b546444f93689" + }, + { + "Start": "fe62f932773e4533afa156cad82af07b", + "End": "6ccd927c32b54f28b16bda63e24dd01a", + "Id": "6c1aae6213014fe08ea8fbe4d0031698" + }, + { + "Start": "864a73bdb4954d4383d654eeab78e675", + "End": "07e5f7fd87a6462293dfac85d25bb2c1", + "Id": "c387ffc094364d7f9d237cb59e154a58" + }, + { + "Start": "e782f6e02620489d941a324c11d964db", + "End": "65eeec342f654c6c9afb9dd47969417e", + "Id": "aecbe0f64366460ea5f2c7b1c925e341" + }, + { + "Start": "326780fae3d344f49a0b8d04faafe9e3", + "End": "3b6ba59f51de4cc69b665149bfe75320", + "Id": "bfb026cfdbe749b5b0611a047a1ca9f4" + }, + { + "Start": "326780fae3d344f49a0b8d04faafe9e3", + "End": "0acfa343ab3b4b2ea874d8425f3b8430", + "Id": "4f0cf9fd7ce44d758fdf1a6249a15b72" + }, + { + "Start": "2cbd65339d4f440dbc26bfa07b0f8c14", + "End": "5b1df5098bb143879fcfe2cb487a2720", + "Id": "bd4b3998a8654a1c8e098fae0c9bff94" + }, + { + "Start": "67a6131008574a89b991822c94519f23", + "End": "f4d4d9fadafd491baaa427169f55b94b", + "Id": "a09e0614ec5142cf98cfaa1696f6f0d1" + }, + { + "Start": "be1cfe789b9046d28cdf11157575380d", + "End": "b1442216e8e0413db0d986cf21abbdb5", + "Id": "c9ae66676b8b43fe9dfa51776729bd17" + }, + { + "Start": "cea6a3566d3e455793c3df1bbd2a69f4", + "End": "00eefeef6a4142f2ba7a3da1213be516", + "Id": "3584a12c80bd4641b299b63dd287a288" + }, + { + "Start": "8aa66e41ee4e46efb12e83b90c5e7bd4", + "End": "345c83d8798742718d2bde83bcee2436", + "Id": "bd69673122e54ea78e830354ae881ec3" + }, + { + "Start": "8aa66e41ee4e46efb12e83b90c5e7bd4", + "End": "d01e768131774bb382b3b9dc549a39e3", + "Id": "0faff1b48b7b4b16905af8f454a8afdc" + }, + { + "Start": "8aa66e41ee4e46efb12e83b90c5e7bd4", + "End": "2c8048ad36f74090b7fb779f0457c8ca", + "Id": "7af56891a325488c8b1e7521782e4adc" + }, + { + "Start": "6bc671c7f67e462bb910966d260db99d", + "End": "442db7ce643549e3b7759fba8c1a91d2", + "Id": "b97df169e7204ec895257cb57d2ac87e" + }, + { + "Start": "07f2e920bfa0413f81c34477c12c1113", + "End": "d40703144cb34d5abf6525f0b1bed824", + "Id": "091d8f3af1854e37964eab32037fff39" + }, + { + "Start": "beb8cd01f2b241f3b5745afe05ae89e1", + "End": "0396b39b1f7a48ba827b8b28cf6b79b6", + "Id": "f2265bd818624154951ff2fe04461ef3" + }, + { + "Start": "beb8cd01f2b241f3b5745afe05ae89e1", + "End": "ec251115daa54ffe9c465f02093c9f3f", + "Id": "9f7c5ce1639a40428640ced1700b452b" + }, + { + "Start": "817bef1728de4a8a8029b5aa96df0d55", + "End": "f64e6297f93449fda2bf99475195ed89", + "Id": "325bf02d5ea74db9ad75915530c1a8bf" + }, + { + "Start": "37650c59513e4ae6bb2be4b7e1f3c900", + "End": "edf057a05edb4b59a5d5c7f0c8935987", + "Id": "d21b10fa108b42d5a62a73b688e612da" + }, + { + "Start": "37650c59513e4ae6bb2be4b7e1f3c900", + "End": "222a18fbe50544b2a6c07189f300f02f", + "Id": "7dc301b6c8f44d6999085aadc767e08a" + }, + { + "Start": "c7136b66b6dd4a8fa683dc434dcfa965", + "End": "c62e793dc4f843b49b8a6fda19e7525e", + "Id": "3616f56864df415981d49323ecfb9871" + }, + { + "Start": "8184ac6f9a18453fba40c054d527e781", + "End": "3c4c1a35e9ac4178907ebbeb5b07ea79", + "Id": "ee17aaa213094f139433082831739e7c" + }, + { + "Start": "32f7a88b7b6c49ecb50e67d27f902baa", + "End": "41a66035b9ba4defa43cfea344d7a682", + "Id": "a486d82850c945999deaedbab267348b" + }, + { + "Start": "217db0acffc842f79781e67cf4dd924b", + "End": "dae74a682ac04cacb267cdb5b183148a", + "Id": "7f9caf2846b2438d803a7c4eefc4ffd1" + }, + { + "Start": "18911e6f1f4c47d3b57400caa7593794", + "End": "d47666810fa54d08983c5c9709d12ef0", + "Id": "086f27092118429fb4495c27ab6735e5" + }, + { + "Start": "af64076c63194ec896d47c3f3f3f4ba0", + "End": "281ce4c848e744cd8270b2fb26b82045", + "Id": "85682a61ef404059aebab87daaccbe04" + }, + { + "Start": "47f1e9c7a2364ca0b8be7e7d505f461b", + "End": "591c228238d94492b60acf964d613c0c", + "Id": "832c39f0a586446385275958e0ba528c" + }, + { + "Start": "47f1e9c7a2364ca0b8be7e7d505f461b", + "End": "df59a7cc41a441da8dc24b1393ed5c8c", + "Id": "798b77b143f9407185bce36385873b58" + }, + { + "Start": "27f425403e174eef97d81f5fc68a55b6", + "End": "4c3ffa6424ab4c2bb618c71cdde4441a", + "Id": "27dcdb5299a74f5f85a5ca209ccafef7" + }, + { + "Start": "c336deccce334ad3b2b4e4da74c4d147", + "End": "7258b69fd43945a69fa2444f8c131c97", + "Id": "2fcdade2cc6c40da9448fef5148ecb38" + }, + { + "Start": "a6deb25017884d8b95c867b2423554af", + "End": "d520afe843674cea82d415855121017b", + "Id": "745fb722e4f3442588d1d6b34e774276" + }, + { + "Start": "8fc347a03d1b4ed5b6e897817b0b5167", + "End": "0f84d6be9835448f980ed8f721716b6b", + "Id": "f3249f3a35b54c30b252e69d4102cccf" + }, + { + "Start": "9aedaa90c8ff4e89ad2eeb846967cc12", + "End": "89ee39ba79634f3d955625226e4648ae", + "Id": "4f85196c1e414a259832be71ed6f5ba3" + }, + { + "Start": "582de39e17d648b3b094aaff922c31a6", + "End": "8a29a73c33bf40cfb814a294d1104c20", + "Id": "0492089f22d441149fab77e990bdf98a" + }, + { + "Start": "2e34355c83314d4f86f84a965006eaa0", + "End": "7a0cd07a27524e4e95a0b6d3149f44da", + "Id": "fb50830e6255428eb43c03df1bbb46b6" + }, + { + "Start": "2b91fea1d7ca419f8f3f53f145633ceb", + "End": "a3716262e88d49ffb9565cd5d676aadd", + "Id": "b1da55e9291b4db8a695510727625cbc" + }, + { + "Start": "a73be5de3c4a41f49381aa3158cc786c", + "End": "9855a4f95f5f41fcbd67e967d9fea14a", + "Id": "8f43e8b28c3942c99a7db7651b4a071f" + }, + { + "Start": "42866cc39f674091bd25e835e46d6f37", + "End": "6144c36d47cd43a78ddad2c30b1ce095", + "Id": "d727bef209bf4365aa56cda06a5c6dc6" + }, + { + "Start": "eebd2d36d78b45a495ad7ba12cab1d6f", + "End": "76153f7f4d3447b8b9a07fecca1815af", + "Id": "a60373ff91184adca1d4a146d4c0d0f0" + }, + { + "Start": "069b95c5b81e4de7af71f4f800f8a145", + "End": "d2e912afc48447579d156497d7673f54", + "Id": "fffe150ed2e54064b9f9e4223bc4b2ed" + }, + { + "Start": "66bbb78426604b789d43c660db65c116", + "End": "991266b4b02446c585dff629a45a9613", + "Id": "c5703d5d3ba046e09c0933f275fc53b9" + }, + { + "Start": "ce63b143e9f84d5285fe499a7d88ebde", + "End": "eefa34e022494bc69bc1087c79fa708f", + "Id": "35c81441268e48ec86fbb45ded0785c7" + }, + { + "Start": "ac48890b6332484683363216fd910b3c", + "End": "dadeb29a71824877b181cd6b60a6d0eb", + "Id": "e663c44a8f1a4370939a6b11046fc23b" + }, + { + "Start": "816f415e8f234578b6d00f887c73317e", + "End": "3383a645ea4740f7943a0359b727a4c2", + "Id": "735aaa02ccb6446ab74fa6fe0c5953ba" + }, + { + "Start": "04139fdd137341b683e62a4a49a5da89", + "End": "142fba2ee46c441b8675628990fecc49", + "Id": "5baf68bb6e734dc09055690e7b2e493c" + }, + { + "Start": "5867d3ad8d7c435a9294c8a48c98c07d", + "End": "7b9287984961431ea174dce668cbb59c", + "Id": "b782b88596f3406d9d049245bdf73eed" + }, + { + "Start": "7e55256a35b94270b613a4ce905b6549", + "End": "53d44acf80ce45fbb45f78f4c20dc885", + "Id": "80d1a4a4892a41c1b367467661a3c8c4" + }, + { + "Start": "db1f858d21634efcb075bffa9651dcd3", + "End": "d2a3cb329d194aef9184d336af895007", + "Id": "beb8e3aac1b040fa8fff3b0b29d52071" + }, + { + "Start": "94bdf26337ae40659d6145681873b599", + "End": "35e40cbca3154dce8c8db5be4db52fb6", + "Id": "54effebc021a4e978900f2ee1c02cbcf" + }, + { + "Start": "fae5a5a38be641088c94e8f3d4501940", + "End": "7311339b3aa74d928a191fb47c28e210", + "Id": "da1a14b2df5c41c7806b977553cd5f25" + }, + { + "Start": "0a7ac0f3ca634b4db185add2e8abb076", + "End": "774d47ef81d448bab9cd14816b03afb0", + "Id": "802fa67a7d4b45d4a9ca3569bcbcf530" + }, + { + "Start": "c68fad14a3294f1db844d8a8340dce02", + "End": "1f0b69924b544843b0ea5bd5f22d89f3", + "Id": "6f08bb679c1e4a91af4d414adfc2537d" + }, + { + "Start": "c68fad14a3294f1db844d8a8340dce02", + "End": "99b9ec21c34b4c31ab3e7910893a22e9", + "Id": "a84e2fcf9c6d422da18bc9232e52f78b" + }, + { + "Start": "b386de337df4421c96fa9262ada8751b", + "End": "3f7a6d5df44248efa63d788f89bb666e", + "Id": "0078249143da41449f6103b1e1b6d80c" + }, + { + "Start": "23399338d87b492da28e036babcdbe78", + "End": "6dfe19ae7e2d4bd9a949b39fd23e2ade", + "Id": "b868042d8b874b6f9f4a8200f981fce3" + }, + { + "Start": "23399338d87b492da28e036babcdbe78", + "End": "0181fcb833864ce78892bd05f2aae637", + "Id": "32a8a402eb394b05a6a338b75ae20661" + }, + { + "Start": "8f3c00375ff64bf6800aee934334e526", + "End": "ce216b5ccbb745ea8c5cc23a69518c95", + "Id": "92811a398ab94055bd97efba59129947" + }, + { + "Start": "62ef523e26ac4d6888036c8f30b2b682", + "End": "0ede402a52724c5d872fede66a7dd088", + "Id": "10d511f009e14936965ddfc2bce4ef0f" + }, + { + "Start": "422f5b0a9a8648d4b7edd39a1a605585", + "End": "d03534096fd84ae7a7d185044fbeebd5", + "Id": "f62408c88e8e460c9ae3451c89750a4b" + }, + { + "Start": "b40fae9281c84c2d87616265e7dc33a9", + "End": "977f4a71802341a79bb4751d38fadc67", + "Id": "16b53c45045749f6811d764e519d6cce" + }, + { + "Start": "1a0d005783e14f168d781d47ec7f4c3f", + "End": "838d0c4df6c04a37806bd5347c5e3822", + "Id": "0ba13ea8192e4cb99346d67e56da61ec" + }, + { + "Start": "9ef565ce14b948878e64e44ee675ff9a", + "End": "6d3f546559b34ccf8d39b8405b862d11", + "Id": "7a46a7014ef844d992801ab7efec9877" + }, + { + "Start": "7ab50d521af24055b3b381043206e1b5", + "End": "2c3fa11d82f8457c94486e5d62fc3a53", + "Id": "2a1dc428439541ea8148630703f6dcde" + }, + { + "Start": "7ab50d521af24055b3b381043206e1b5", + "End": "3e5a793830274f2d9617883e33ef9edb", + "Id": "ef2f061378144462b377c0ce72a50a5f" + }, + { + "Start": "b3d98f3501384bba99665f129bee4fe7", + "End": "0994fe4a3dd941d286a6226d96fe4d36", + "Id": "1e74a6f75b354aec99f30f29d26f3da7" + }, + { + "Start": "9f7fd8ce8c994992862b7f32ddb641f3", + "End": "8189d12152544487bdf9b5c9f803ef2c", + "Id": "e5ed86f67863444588232d204c419b62" + }, + { + "Start": "df3ecb3abc394a4b9dadecbeefd1542f", + "End": "6a68432958544d18b98b633244e0841b", + "Id": "7f2aeb749dc54d2fb8fb1345c4502829" + }, + { + "Start": "df3ecb3abc394a4b9dadecbeefd1542f", + "End": "92834c3f59e24892a6c884024c7fe86e", + "Id": "28ecd279fc80452fa9ad568fd17d026e" + }, + { + "Start": "117405392f0b4da384566012a4c490a3", + "End": "c26dbfde341e40e5a72f0923e67fb7a1", + "Id": "47105eed336b43718b6e7521244da4bf" + }, + { + "Start": "2912cffe7eba440b927bb63beff1ad2e", + "End": "ec59afd0351142fcb06c818c3eee0bd4", + "Id": "13b1b11b8c594207800f05c7e9b7ab4d" + }, + { + "Start": "f0a89885f0ef431c9517f012211f7ac1", + "End": "423d2441f04246939974f326d0834828", + "Id": "296fcd10a7c84295a9018bd051dac33f" + }, + { + "Start": "6e07ea29b423452482d5b5742f9862a1", + "End": "0af202cc7e054aba88f1d3ba7cf791ad", + "Id": "68ec8a3fbdba45f7b14a74f079b12b30" + }, + { + "Start": "04bc8e7ded4c474ca9b92ccbdb9b74a8", + "End": "2230ec1ded344d598898b1b30d155c3b", + "Id": "f67454fc86fe40f49562e747977f5307" + }, + { + "Start": "d97d062b37a74ee3b49e2026a50d8f44", + "End": "782e51ac2aaf42e29e1e493c3192fb60", + "Id": "b5e23339424f4d93bf4c621e81e3a9f6" + }, + { + "Start": "ace584b0263a4ed9920f4c056e7af222", + "End": "ef5ff3c0bb8643aa8074600691d04406", + "Id": "dd04a3974de34f47850da89416654efe" + }, + { + "Start": "c7f763cbe6324cb4818cee3b844167a7", + "End": "a4b62baa4e874a3ea5dbfd0559d55a5e", + "Id": "83848c793d56442494296328b9706450" + }, + { + "Start": "e82b36791d2b40ffaddddc22a2439d59", + "End": "3383352758bd4aa0b2ea6122c89c7abd", + "Id": "61343462ebba4d78acf642c8448669a2" + } + ], + "Dependencies": [ + "1e3b5d82-c924-4649-a653-7fa7ead9cd1c", + "4796d57c-a1a0-4676-b524-57abb5fa73be", + "7138be89-af7b-4232-b938-e63a5fe78240", + "dda914fd-aaf1-4ff4-a80c-dab136aa16cc", + "2344df3c-35d0-4ee4-b20a-6a7259317cfc" + ], + "Bindings": [], + "View": { + "Dynamo": { + "ScaleFactor": 1.0, + "HasRunWithoutCrash": true, + "IsVisibleInDynamoLibrary": true, + "Version": "2.0.2.6826", + "RunType": "Manual", + "RunPeriod": "1000" + }, + "Camera": { + "Name": "Background Preview", + "EyeX": -17.0, + "EyeY": 24.0, + "EyeZ": 50.0, + "LookX": 12.0, + "LookY": -13.0, + "LookZ": -58.0, + "UpX": 0.0, + "UpY": 1.0, + "UpZ": 0.0 + }, + "NodeViews": [ + { + "ShowGeometry": true, + "Name": "Categories", + "Id": "668e9ae9cdd24dfab3a1bae211b25268", + "IsSetAsInput": true, + "IsSetAsOutput": false, + "Excluded": false, + "X": -1035.1599174540065, + "Y": -226.10774695677935 + }, + { + "ShowGeometry": true, + "Name": "FamilyType.CompoundStructureLayers", + "Id": "b3569226a756430ea51e1c9f66a96f75", + "IsSetAsInput": false, + "IsSetAsOutput": false, + "Excluded": false, + "X": 340.364565741894, + "Y": 336.47595176578221 + }, + { + "ShowGeometry": true, + "Name": "Element.Type", + "Id": "108db5eef5b74c4e9e7587b412541c7b", + "IsSetAsInput": false, + "IsSetAsOutput": false, + "Excluded": false, + "X": -133.66465123644934, + "Y": -249.57506864100884 + }, + { + "ShowGeometry": true, + "Name": "Element.GetParameterValueByName", + "Id": "0e33b6fd8e734cb687c06080341297f3", + "IsSetAsInput": false, + "IsSetAsOutput": false, + "Excluded": false, + "X": 1528.3019066456789, + "Y": 236.04350597918881 + }, + { + "ShowGeometry": true, + "Name": "Code Block", + "Id": "0da2808dfb5f4ef3b9844d861f0bbbd6", + "IsSetAsInput": false, + "IsSetAsOutput": false, + "Excluded": false, + "X": 1056.3019066456789, + "Y": 296.47017264585554 + }, + { + "ShowGeometry": true, + "Name": "Element.SetParameterByName", + "Id": "2107a0d05686481c8134c42fa4a12bb7", + "IsSetAsInput": false, + "IsSetAsOutput": false, + "Excluded": false, + "X": 4914.8154101279952, + "Y": 931.923288092856 + }, + { + "ShowGeometry": true, + "Name": "Springs.Number.ToString", + "Id": "e8e0c18dfbc74d069159fa163f4bd95f", + "IsSetAsInput": false, + "IsSetAsOutput": false, + "Excluded": false, + "X": 926.55404003704609, + "Y": 851.27574872173977 + }, + { + "ShowGeometry": true, + "Name": "All Elements of Category", + "Id": "2d8b3b8c181f4377bd1cff438435a2a5", + "IsSetAsInput": false, + "IsSetAsOutput": false, + "Excluded": false, + "X": -549.15991745400652, + "Y": -103.10774695677932 + }, + { + "ShowGeometry": true, + "Name": "Categories", + "Id": "ebe9480a119149c489cd99a57325b06c", + "IsSetAsInput": true, + "IsSetAsOutput": false, + "Excluded": false, + "X": -1035.1599174540065, + "Y": -118.10774695677932 + }, + { + "ShowGeometry": true, + "Name": "Categories", + "Id": "78191b33be524cba9331af8c26df6542", + "IsSetAsInput": true, + "IsSetAsOutput": false, + "Excluded": false, + "X": -1035.1599174540065, + "Y": 97.892253043220677 + }, + { + "ShowGeometry": true, + "Name": "Categories", + "Id": "68c0dfc1cab049369d2b67afd239bb5a", + "IsSetAsInput": true, + "IsSetAsOutput": false, + "Excluded": false, + "X": -1035.1599174540065, + "Y": -10.107746956779323 + }, + { + "ShowGeometry": true, + "Name": "List.UniqueItems", + "Id": "b19c3d797b7145e088e947a19fda99c7", + "IsSetAsInput": false, + "IsSetAsOutput": false, + "Excluded": false, + "X": 157.33534876355071, + "Y": -249.57506864100884 + }, + { + "ShowGeometry": true, + "Name": "List.Create", + "Id": "8102dc14d1e148d997544448223ab310", + "IsSetAsInput": false, + "IsSetAsOutput": false, + "Excluded": false, + "X": -769.15991745400652, + "Y": -103.10774695677932 + }, + { + "ShowGeometry": true, + "Name": "Layer width rounding", + "Id": "942038f5301d4e3cb971fd6da0ea6535", + "IsSetAsInput": false, + "IsSetAsOutput": false, + "Excluded": false, + "X": -351.60075649984924, + "Y": 1581.7126010293832 + }, + { + "ShowGeometry": true, + "Name": "'Layerlist name' parameter", + "Id": "47987fb02df14fc68d1e28d7eb4127a3", + "IsSetAsInput": true, + "IsSetAsOutput": false, + "Excluded": false, + "X": 3079.8613577739798, + "Y": -1156.239296296324 + }, + { + "ShowGeometry": true, + "Name": "'Layer widths' parameter", + "Id": "9cac7901cb644c0cbf90f76e0d6422ad", + "IsSetAsInput": false, + "IsSetAsOutput": false, + "Excluded": false, + "X": 3072.8040452910773, + "Y": -1072.6416089746372 + }, + { + "ShowGeometry": true, + "Name": "'Layer names' parameter", + "Id": "04eebda61fae41a3848a244e40cf273e", + "IsSetAsInput": false, + "IsSetAsOutput": false, + "Excluded": false, + "X": 3071.7958577935206, + "Y": -981.94567168226206 + }, + { + "ShowGeometry": true, + "Name": "String.Join", + "Id": "a8fe84c0ab5343488c21aff9ff9bbede", + "IsSetAsInput": false, + "IsSetAsOutput": false, + "Excluded": false, + "X": 5172.965345193852, + "Y": 1766.7113727004521 + }, + { + "ShowGeometry": true, + "Name": "Code Block", + "Id": "0b88ad5ce36b4c9dba8821eeca593696", + "IsSetAsInput": false, + "IsSetAsOutput": false, + "Excluded": false, + "X": 5007.8175925220767, + "Y": 1694.6359218387961 + }, + { + "ShowGeometry": true, + "Name": "List.Map", + "Id": "b175c5645ceb404ba731e5f70cf4d064", + "IsSetAsInput": false, + "IsSetAsOutput": false, + "Excluded": false, + "X": 5556.7058017906711, + "Y": 1884.7684800938391 + }, + { + "ShowGeometry": true, + "Name": "List.Map", + "Id": "91ed8c5eb1d746258444a9ecf3ac23b3", + "IsSetAsInput": false, + "IsSetAsOutput": false, + "Excluded": false, + "X": 5553.3914758896371, + "Y": 1551.8296953473632 + }, + { + "ShowGeometry": true, + "Name": "Membran layer text", + "Id": "621247b0deaf45eb936c37fbdadf9e48", + "IsSetAsInput": false, + "IsSetAsOutput": false, + "Excluded": false, + "X": -272.13999129448962, + "Y": 1753.4308945489395 + }, + { + "ShowGeometry": true, + "Name": "'Extra layers' parameter", + "Id": "15eb28e520424aa6bf64b9ad0e15a234", + "IsSetAsInput": false, + "IsSetAsOutput": false, + "Excluded": false, + "X": 3051.5259210105605, + "Y": -889.557945575344 + }, + { + "ShowGeometry": true, + "Name": "Layer width unit", + "Id": "ab00cdcd7d2247ada6deddb6bcebc23d", + "IsSetAsInput": false, + "IsSetAsOutput": false, + "Excluded": false, + "X": -268.75595024725965, + "Y": 1676.6027425970374 + }, + { + "ShowGeometry": true, + "Name": "Code Block", + "Id": "422f96429ad44e0db35a0506ad314993", + "IsSetAsInput": false, + "IsSetAsOutput": false, + "Excluded": false, + "X": 975.73959893887309, + "Y": 1573.4333060881061 + }, + { + "ShowGeometry": true, + "Name": "List.Map", + "Id": "49c30eb71d3d42e28452535b32d4d674", + "IsSetAsInput": false, + "IsSetAsOutput": false, + "Excluded": false, + "X": 1667.2560381054454, + "Y": 1603.2723664357447 + }, + { + "ShowGeometry": true, + "Name": "String.Join", + "Id": "1ced7463a3974512bad1f98c73032009", + "IsSetAsInput": false, + "IsSetAsOutput": false, + "Excluded": false, + "X": 1135.2560381054454, + "Y": 1655.2723664357447 + }, + { + "ShowGeometry": true, + "Name": "List.Map", + "Id": "0f43acb2229c460d8b80c1b1f30aae63", + "IsSetAsInput": false, + "IsSetAsOutput": false, + "Excluded": false, + "X": 1433.2560381054454, + "Y": 1629.2723664357447 + }, + { + "ShowGeometry": true, + "Name": "List.Map", + "Id": "ad1457f3e5ae49209443d3892875a39d", + "IsSetAsInput": false, + "IsSetAsOutput": false, + "Excluded": false, + "X": 3826.4643740752731, + "Y": 1988.4635807671289 + }, + { + "ShowGeometry": true, + "Name": "Code Block", + "Id": "4b69387bc7cd4a60b3205feb5e9d9df7", + "IsSetAsInput": false, + "IsSetAsOutput": false, + "Excluded": false, + "X": 3356.5631637856332, + "Y": 2130.2313771341687 + }, + { + "ShowGeometry": true, + "Name": "List.AllIndicesOf", + "Id": "503d252d72bc4146907f3c2c3f827313", + "IsSetAsInput": false, + "IsSetAsOutput": false, + "Excluded": false, + "X": 3541.266794654553, + "Y": 2098.1168335111888 + }, + { + "ShowGeometry": true, + "Name": "List.RemoveItemAtIndex", + "Id": "83abfc04d21c44058b822646217811ba", + "IsSetAsInput": false, + "IsSetAsOutput": false, + "Excluded": false, + "X": 4380.8998679203178, + "Y": 1160.2641098364 + }, + { + "ShowGeometry": true, + "Name": "List.RemoveItemAtIndex", + "Id": "ec852268f491434498eacea9a982a429", + "IsSetAsInput": false, + "IsSetAsOutput": false, + "Excluded": false, + "X": 4292.7167562992008, + "Y": 2371.5298759179891 + }, + { + "ShowGeometry": true, + "Name": "Element.GetParameterValueByName", + "Id": "2e941b2a6c5e485b81c3d418c3b303af", + "IsSetAsInput": false, + "IsSetAsOutput": false, + "Excluded": false, + "X": 3519.3702929719939, + "Y": -727.36434645063821 + }, + { + "ShowGeometry": true, + "Name": "List.Map", + "Id": "b436b3c4830347beb2c10b60c15d5fcd", + "IsSetAsInput": false, + "IsSetAsOutput": false, + "Excluded": false, + "X": 4317.7670320017833, + "Y": -262.25900421221775 + }, + { + "ShowGeometry": true, + "Name": "String.Split", + "Id": "15c7dc09beb0494e8298057502481ba1", + "IsSetAsInput": false, + "IsSetAsOutput": false, + "Excluded": false, + "X": 3955.3068444302007, + "Y": -174.24715022679527 + }, + { + "ShowGeometry": true, + "Name": "Code Block", + "Id": "7102e328f567432e9eee4d66acf67d49", + "IsSetAsInput": false, + "IsSetAsOutput": false, + "Excluded": false, + "X": 3675.9895553841088, + "Y": -114.22651746530789 + }, + { + "ShowGeometry": true, + "Name": "Use material description", + "Id": "b40ad679b7364a9aa6d9cae73caf8b2a", + "IsSetAsInput": true, + "IsSetAsOutput": false, + "Excluded": false, + "X": -288.11851979627795, + "Y": 1886.0453256816913 + }, + { + "ShowGeometry": true, + "Name": "If", + "Id": "09432b4a59a14668983601dbb61cb5d7", + "IsSetAsInput": false, + "IsSetAsOutput": false, + "Excluded": false, + "X": 1301.3019066456789, + "Y": 262.04350597918881 + }, + { + "ShowGeometry": true, + "Name": "ReplaceFollowingSameElements", + "Id": "6588f325843746e8a94990f6bc23d9ed", + "IsSetAsInput": false, + "IsSetAsOutput": false, + "Excluded": false, + "X": 2160.0802635692917, + "Y": 594.802174875235 + }, + { + "ShowGeometry": true, + "Name": "Code Block", + "Id": "9b3d5bbd6fae4209ac37d6028d0430a4", + "IsSetAsInput": false, + "IsSetAsOutput": false, + "Excluded": false, + "X": 1981.0802635692917, + "Y": 625.01550820856858 + }, + { + "ShowGeometry": true, + "Name": "ReplaceFollowingElements", + "Id": "78b04d58f99c49c5a28a0b3f728c2623", + "IsSetAsInput": false, + "IsSetAsOutput": false, + "Excluded": false, + "X": 2217.7999166024397, + "Y": 1377.90950565244 + }, + { + "ShowGeometry": true, + "Name": "Code Block", + "Id": "629138f0cea242d483cf747d8e9c69a1", + "IsSetAsInput": false, + "IsSetAsOutput": false, + "Excluded": false, + "X": 2038.7999166024397, + "Y": 1416.54950565244 + }, + { + "ShowGeometry": true, + "Name": "Object.Type", + "Id": "0b864c2b61a744e294fd0316e867cfd9", + "IsSetAsInput": false, + "IsSetAsOutput": false, + "Excluded": false, + "X": 2636.5168609142465, + "Y": 1077.222792324206 + }, + { + "ShowGeometry": true, + "Name": "Code Block", + "Id": "ef140c46efcf45ea9e60e9c7212583ae", + "IsSetAsInput": false, + "IsSetAsOutput": false, + "Excluded": false, + "X": 2636.5168609142465, + "Y": 967.43612565753949 + }, + { + "ShowGeometry": true, + "Name": "==", + "Id": "3865c5c97c3e4751a9a0cd6a329d94b8", + "IsSetAsInput": false, + "IsSetAsOutput": false, + "Excluded": false, + "X": 2908.5168609142465, + "Y": 1007.222792324206 + }, + { + "ShowGeometry": true, + "Name": "Object.Type", + "Id": "3e32ee6686f1457a973dd529fb3b52ac", + "IsSetAsInput": false, + "IsSetAsOutput": false, + "Excluded": false, + "X": 2642.1531116431652, + "Y": 1367.4897048635396 + }, + { + "ShowGeometry": true, + "Name": "Code Block", + "Id": "df3d3a0ab43b445dbc57cb719ea927f6", + "IsSetAsInput": false, + "IsSetAsOutput": false, + "Excluded": false, + "X": 2642.1531116431652, + "Y": 1257.7030381968736 + }, + { + "ShowGeometry": true, + "Name": "==", + "Id": "0b5a44c37d6d4ae9a95d7bb67f105569", + "IsSetAsInput": false, + "IsSetAsOutput": false, + "Excluded": false, + "X": 2914.1531116431652, + "Y": 1297.4897048635396 + }, + { + "ShowGeometry": true, + "Name": "Code Block", + "Id": "798bfaa5a6c54cfcb42623d93845b9b8", + "IsSetAsInput": false, + "IsSetAsOutput": false, + "Excluded": false, + "X": 3292.3606766188109, + "Y": 1239.0947687653395 + }, + { + "ShowGeometry": true, + "Name": "If", + "Id": "4850767db692463980cf426901283142", + "IsSetAsInput": false, + "IsSetAsOutput": false, + "Excluded": false, + "X": 3763.7791388677842, + "Y": 1543.3249998313577 + }, + { + "ShowGeometry": true, + "Name": "Code Block", + "Id": "8d741657c4a84e1d91af822f4ba009c9", + "IsSetAsInput": false, + "IsSetAsOutput": false, + "Excluded": false, + "X": 2340.2151158612814, + "Y": 2015.883146146944 + }, + { + "ShowGeometry": true, + "Name": "Code Block", + "Id": "43df727a9f544746bfa0cabd75be0368", + "IsSetAsInput": false, + "IsSetAsOutput": false, + "Excluded": false, + "X": 2576.1684029196986, + "Y": 1926.0594347879369 + }, + { + "ShowGeometry": true, + "Name": "Python Script", + "Id": "ff5e666de63640dab15350200fb37058", + "IsSetAsInput": false, + "IsSetAsOutput": false, + "Excluded": false, + "X": 4598.0483904655293, + "Y": -308.62758495497036 + }, + { + "ShowGeometry": true, + "Name": "Code Block", + "Id": "e19e7867b2ff4490b2507ffe3fc45f1b", + "IsSetAsInput": false, + "IsSetAsOutput": false, + "Excluded": false, + "X": 4901.9657023950695, + "Y": -300.32480313031306 + }, + { + "ShowGeometry": true, + "Name": "String.Split", + "Id": "ce6b57d90267434dba0dd97d2fa854a5", + "IsSetAsInput": false, + "IsSetAsOutput": false, + "Excluded": false, + "X": 5360.7072092185617, + "Y": -358.83308146250471 + }, + { + "ShowGeometry": true, + "Name": "Code Block", + "Id": "9607f4505da4425880a5c203e2f6575a", + "IsSetAsInput": false, + "IsSetAsOutput": false, + "Excluded": false, + "X": 5240.1247624475072, + "Y": -289.49639690980433 + }, + { + "ShowGeometry": true, + "Name": "Code Block", + "Id": "a8b0ecbad05345158a4a0c28f3b0cc35", + "IsSetAsInput": false, + "IsSetAsOutput": false, + "Excluded": false, + "X": 5234.5789719051754, + "Y": 152.64910702283328 + }, + { + "ShowGeometry": true, + "Name": "String.Split", + "Id": "7aa84638faf240a695d0efb22b2a9d24", + "IsSetAsInput": false, + "IsSetAsOutput": false, + "Excluded": false, + "X": 5340.1547494468232, + "Y": 89.140958925149619 + }, + { + "ShowGeometry": true, + "Name": "Code Block", + "Id": "7c232e284ea54fc59548b75d9094ca50", + "IsSetAsInput": false, + "IsSetAsOutput": false, + "Excluded": false, + "X": 5212.2941278143408, + "Y": -56.2713063287452 + }, + { + "ShowGeometry": true, + "Name": "String.Split", + "Id": "0adf919d36ad427daeca55500d1abf9a", + "IsSetAsInput": false, + "IsSetAsOutput": false, + "Excluded": false, + "X": 5339.2262142763711, + "Y": -136.4930874945548 + }, + { + "ShowGeometry": true, + "Name": "List.FirstItem", + "Id": "38cd2e70009e4aaabe5c83b3491cae0e", + "IsSetAsInput": false, + "IsSetAsOutput": false, + "Excluded": false, + "X": 5729.3829164756235, + "Y": 140.63206620050477 + }, + { + "ShowGeometry": true, + "Name": "List.Map", + "Id": "ba9bf7d57eee4345946adf349761b5b6", + "IsSetAsInput": false, + "IsSetAsOutput": false, + "Excluded": false, + "X": 6141.8923140288225, + "Y": -2.8848454552196472 + }, + { + "ShowGeometry": true, + "Name": "List.Map", + "Id": "98cb4f9642dc45f3b6dc38dcbc04dcd6", + "IsSetAsInput": false, + "IsSetAsOutput": false, + "Excluded": false, + "X": 5954.8344817559782, + "Y": 68.901608243692181 + }, + { + "ShowGeometry": true, + "Name": "List.FirstItem", + "Id": "286c520aafca44fba31aa30159408c26", + "IsSetAsInput": false, + "IsSetAsOutput": false, + "Excluded": false, + "X": 5546.381863380052, + "Y": -587.13991877624755 + }, + { + "ShowGeometry": true, + "Name": "List.Map", + "Id": "3907f415d327494281ba612cfe3908cf", + "IsSetAsInput": false, + "IsSetAsOutput": false, + "Excluded": false, + "X": 5759.3617167119319, + "Y": -671.34208868153155 + }, + { + "ShowGeometry": true, + "Name": "List.Map", + "Id": "47ed90debf664862b9738e2595669248", + "IsSetAsInput": false, + "IsSetAsOutput": false, + "Excluded": false, + "X": 6066.2266689865974, + "Y": -670.095390637343 + }, + { + "ShowGeometry": true, + "Name": "List.LastItem", + "Id": "740979aff738404a994a3f3e5850b125", + "IsSetAsInput": false, + "IsSetAsOutput": false, + "Excluded": false, + "X": 5698.7388695850932, + "Y": 635.237075143129 + }, + { + "ShowGeometry": true, + "Name": "List.Map", + "Id": "18a53fc31d5b4db2aaf7d45c1da62054", + "IsSetAsInput": false, + "IsSetAsOutput": false, + "Excluded": false, + "X": 5909.8055825869651, + "Y": 569.9924348937368 + }, + { + "ShowGeometry": true, + "Name": "List.Map", + "Id": "189ca5ee14344044b178f8e3080a304f", + "IsSetAsInput": false, + "IsSetAsOutput": false, + "Excluded": false, + "X": 6098.1333347799955, + "Y": 460.10838358907336 + }, + { + "ShowGeometry": true, + "Name": "List.LastItem", + "Id": "017b9ee6c6eb451fb78483386e5caa06", + "IsSetAsInput": false, + "IsSetAsOutput": false, + "Excluded": false, + "X": 5752.7552156504344, + "Y": -338.69401300470611 + }, + { + "ShowGeometry": true, + "Name": "List.Map", + "Id": "397b9c2f854e4d4e82a4fcab9e104af4", + "IsSetAsInput": false, + "IsSetAsOutput": false, + "Excluded": false, + "X": 5963.8219286523145, + "Y": -403.93865325409809 + }, + { + "ShowGeometry": true, + "Name": "List.Map", + "Id": "ce507d7daa364ca2ad9b534615926f12", + "IsSetAsInput": false, + "IsSetAsOutput": false, + "Excluded": false, + "X": 6152.1496808453448, + "Y": -513.8227045587621 + } + ], + "Annotations": [ + { + "Id": "a8284649f3a14b99a63bd0f72a875682", + "Title": "Get all categories", + "Nodes": [ + "668e9ae9cdd24dfab3a1bae211b25268", + "2d8b3b8c181f4377bd1cff438435a2a5", + "ebe9480a119149c489cd99a57325b06c", + "78191b33be524cba9331af8c26df6542", + "68c0dfc1cab049369d2b67afd239bb5a", + "8102dc14d1e148d997544448223ab310" + ], + "Left": -1045.1599174540065, + "Top": -279.10774695677935, + "Width": 680.0, + "Height": 470.0, + "FontSize": 36.0, + "InitialTop": -226.10774695677935, + "InitialHeight": 469.0, + "TextblockHeight": 43.0, + "Background": "#FFC1D676" + }, + { + "Id": "92a0dfe9f2d745b7aa3b2ebeaf42d04f", + "Title": "Get all types", + "Nodes": [ + "108db5eef5b74c4e9e7587b412541c7b", + "b19c3d797b7145e088e947a19fda99c7" + ], + "Left": -143.66465123644934, + "Top": -302.57506864100884, + "Width": 464.00000000000006, + "Height": 146.0, + "FontSize": 36.0, + "InitialTop": -249.57506864100884, + "InitialHeight": 145.0, + "TextblockHeight": 43.0, + "Background": "#FFC1D676" + }, + { + "Id": "9b421a92c97e421eb0586bb6cf79eee6", + "Title": "Material name/description", + "Nodes": [ + "0e33b6fd8e734cb687c06080341297f3", + "0da2808dfb5f4ef3b9844d861f0bbbd6", + "09432b4a59a14668983601dbb61cb5d7" + ], + "Left": 1046.3019066456789, + "Top": 183.04350597918881, + "Width": 755.0, + "Height": 216.42666666666673, + "FontSize": 36.0, + "InitialTop": 236.04350597918881, + "InitialHeight": 255.84211723107444, + "TextblockHeight": 43.0, + "Background": "#FFC1D676" + }, + { + "Id": "5cfeffaec0234dddbd54d581de1c229b", + "Title": "Widths", + "Nodes": [ + "e8e0c18dfbc74d069159fa163f4bd95f" + ], + "Left": 916.55404003704609, + "Top": 798.27574872173977, + "Width": 188.0, + "Height": 172.0, + "FontSize": 36.0, + "InitialTop": 851.27574872173977, + "InitialHeight": 145.0, + "TextblockHeight": 43.0, + "Background": "#FFC1D676" + }, + { + "Id": "b3561d18beaf4c3e8069797c2a3d109a", + "Title": "Add width units", + "Nodes": [ + "422f96429ad44e0db35a0506ad314993", + "49c30eb71d3d42e28452535b32d4d674", + "1ced7463a3974512bad1f98c73032009", + "0f43acb2229c460d8b80c1b1f30aae63" + ], + "Left": 965.73959893887309, + "Top": 1520.4333060881061, + "Width": 845.51643916657235, + "Height": 279.83906034763868, + "FontSize": 36.0, + "InitialTop": 1573.4333060881061, + "InitialHeight": 226.83906034763868, + "TextblockHeight": 43.0, + "Background": "#FFC1D676" + }, + { + "Id": "4d92ef1e261a4ee7afdf81f3743880dd", + "Title": "Duplicate membrane layers to remove", + "Nodes": [ + "ad1457f3e5ae49209443d3892875a39d", + "4b69387bc7cd4a60b3205feb5e9d9df7", + "503d252d72bc4146907f3c2c3f827313" + ], + "Left": 3346.5631637856332, + "Top": 1935.4635807671289, + "Width": 623.90121028964, + "Height": 287.76779636703986, + "FontSize": 36.0, + "InitialTop": 1988.4635807671289, + "InitialHeight": 201.213333333333, + "TextblockHeight": 43.0, + "Background": "#FFC1D676" + }, + { + "Id": "188037ba2801458f957247d0aa692230", + "Title": "Multiline strings", + "Nodes": [ + "a8fe84c0ab5343488c21aff9ff9bbede", + "0b88ad5ce36b4c9dba8821eeca593696", + "b175c5645ceb404ba731e5f70cf4d064", + "91ed8c5eb1d746258444a9ecf3ac23b3" + ], + "Left": 4997.8175925220767, + "Top": 1498.8296953473632, + "Width": 702.88820926859444, + "Height": 504.9387847464759, + "FontSize": 36.0, + "InitialTop": 1551.8296953473632, + "InitialHeight": 477.9387847464759, + "TextblockHeight": 43.0, + "Background": "#FFC1D676" + }, + { + "Id": "845aa39348b345cf91d5909d4f1ba160", + "Title": "Input", + "Nodes": [ + "942038f5301d4e3cb971fd6da0ea6535", + "621247b0deaf45eb936c37fbdadf9e48", + "ab00cdcd7d2247ada6deddb6bcebc23d", + "b40ad679b7364a9aa6d9cae73caf8b2a" + ], + "Left": -361.60075649984924, + "Top": 1528.7126010293832, + "Width": 319.0, + "Height": 425.33272465230812, + "FontSize": 36.0, + "InitialTop": 1581.7126010293832, + "InitialHeight": 318.00984257550476, + "TextblockHeight": 43.0, + "Background": "#FFFFB8D8" + }, + { + "Id": "d15ac98a8a1242dd9488d14091573ef8", + "Title": "Input: parameter names", + "Nodes": [ + "47987fb02df14fc68d1e28d7eb4127a3", + "9cac7901cb644c0cbf90f76e0d6422ad", + "04eebda61fae41a3848a244e40cf273e", + "15eb28e520424aa6bf64b9ad0e15a234" + ], + "Left": 3041.5259210105605, + "Top": -1296.239296296324, + "Width": 227.33543676341924, + "Height": 474.68135072098005, + "FontSize": 36.0, + "InitialTop": -1156.239296296324, + "InitialHeight": 405.84347679203063, + "TextblockHeight": 130.0, + "Background": "#FFFFB8D8" + }, + { + "Id": "0543878e40b84ea5b0f4b7ddbf47f88a", + "Title": "Find duplicate layers", + "Nodes": [ + "6588f325843746e8a94990f6bc23d9ed", + "9b3d5bbd6fae4209ac37d6028d0430a4" + ], + "Left": 1971.0802635692917, + "Top": 541.802174875235, + "Width": 471.0, + "Height": 198.0, + "FontSize": 36.0, + "InitialTop": 594.802174875235, + "InitialHeight": 164.96814806699331, + "TextblockHeight": 43.0, + "Background": "#FFC1D676" + }, + { + "Id": "ca68d05fbaba4ba5839f9a6aa2ad9626", + "Title": "Duplicate names => true", + "Nodes": [ + "0b864c2b61a744e294fd0316e867cfd9", + "ef140c46efcf45ea9e60e9c7212583ae", + "3865c5c97c3e4751a9a0cd6a329d94b8" + ], + "Left": 2626.5168609142465, + "Top": 914.43612565753949, + "Width": 461.0, + "Height": 255.78666666666652, + "FontSize": 36.0, + "InitialTop": 967.43612565753949, + "InitialHeight": 229.86593194662873, + "TextblockHeight": 43.0, + "Background": "#FFC1D676" + }, + { + "Id": "034a403a25ca45af8551cac324648465", + "Title": "Membrane layers=> true", + "Nodes": [ + "3e32ee6686f1457a973dd529fb3b52ac", + "df3d3a0ab43b445dbc57cb719ea927f6", + "0b5a44c37d6d4ae9a95d7bb67f105569" + ], + "Left": 2632.1531116431652, + "Top": 1204.7030381968736, + "Width": 461.0, + "Height": 255.78666666666595, + "FontSize": 36.0, + "InitialTop": 1257.7030381968736, + "InitialHeight": 232.78666666666595, + "TextblockHeight": 43.0, + "Background": "#FFC1D676" + }, + { + "Id": "223739a378ff49d1a3fdacf90cf21373", + "Title": "Find duplicate membrane layers", + "Nodes": [ + "78b04d58f99c49c5a28a0b3f728c2623", + "629138f0cea242d483cf747d8e9c69a1" + ], + "Left": 2028.7999166024397, + "Top": 1281.90950565244, + "Width": 495.0, + "Height": 255.6400000000001, + "FontSize": 36.0, + "InitialTop": 1377.90950565244, + "InitialHeight": 223.26373263601522, + "TextblockHeight": 86.0, + "Background": "#FFC1D676" + }, + { + "Id": "fee6855319de4975bb25270e24757892", + "Title": "Membrane and duplicate", + "Nodes": [ + "798bfaa5a6c54cfcb42623d93845b9b8" + ], + "Left": 3282.3606766188109, + "Top": 1099.0947687653395, + "Width": 156.15, + "Height": 243.0, + "FontSize": 36.0, + "InitialTop": 1239.0947687653395, + "InitialHeight": 133.0, + "TextblockHeight": 130.0, + "Background": "#FFC1D676" + }, + { + "Id": "c27875e689354ff688ca825176fd5f28", + "Title": "Cleaned layer names", + "Nodes": [ + "83abfc04d21c44058b822646217811ba" + ], + "Left": 4370.8998679203178, + "Top": 1064.2641098364, + "Width": 198.0, + "Height": 215.0, + "FontSize": 36.0, + "InitialTop": 1160.2641098364, + "InitialHeight": 149.0, + "TextblockHeight": 86.0, + "Background": "#FFC1D676" + }, + { + "Id": "d9d2528657d346a28315b101433f6355", + "Title": "Cleaned layer widths", + "Nodes": [ + "ec852268f491434498eacea9a982a429" + ], + "Left": 4282.7167562992008, + "Top": 2275.5298759179891, + "Width": 198.0, + "Height": 215.0, + "FontSize": 36.0, + "InitialTop": 2371.5298759179891, + "InitialHeight": 149.0, + "TextblockHeight": 86.0, + "Background": "#FFC1D676" + }, + { + "Id": "0b3acd985a74407bb8e9b92f7d8261af", + "Title": "Replace membrane widths", + "Nodes": [ + "8d741657c4a84e1d91af822f4ba009c9", + "43df727a9f544746bfa0cabd75be0368" + ], + "Left": 2330.2151158612814, + "Top": 1873.0594347879369, + "Width": 479.95328705841712, + "Height": 235.82371135900712, + "FontSize": 36.0, + "InitialTop": 1926.0594347879369, + "InitialHeight": 212.82371135900712, + "TextblockHeight": 43.0, + "Background": "#FFC1D676" + }, + { + "Id": "3dff86bfe86347c78931af4071f9ff2b", + "Title": "Example format:\r\n3 cm|ExtraLayernameAbove\r\n---\r\nvar:3-6cm\r\n---\r\n3 cm|ExtraLayernameBelow", + "Nodes": [], + "Left": 4583.8502291243276, + "Top": -434.65372535303709, + "Width": 0.0, + "Height": 0.0, + "FontSize": 36.0, + "InitialTop": 0.0, + "InitialHeight": 0.0, + "TextblockHeight": 0.0, + "Background": "#FFC1D676" + } + ], + "X": -3893.2616467705093, + "Y": 399.86156895519684, + "Zoom": 0.78745122751443408 + } +} \ No newline at end of file diff --git a/WIP/LayerNamesToParameter/readme.md b/WIP/LayerNamesToParameter/readme.md new file mode 100644 index 0000000..e69de29 diff --git a/WIP/Layers.dyn b/WIP/Layers.dyn new file mode 100644 index 0000000..a9a0797 --- /dev/null +++ b/WIP/Layers.dyn @@ -0,0 +1,298 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/WIP/OffsetFloorShapeSubElements/1.x/empty-dir b/WIP/OffsetFloorShapeSubElements/1.x/empty-dir new file mode 100644 index 0000000..e69de29 diff --git a/WIP/OffsetFloorShapeSubElements/2.x/OffsetFloorShapeSubElements.dyn b/WIP/OffsetFloorShapeSubElements/2.x/OffsetFloorShapeSubElements.dyn new file mode 100644 index 0000000..869c84f --- /dev/null +++ b/WIP/OffsetFloorShapeSubElements/2.x/OffsetFloorShapeSubElements.dyn @@ -0,0 +1,618 @@ +{ + "Uuid": "9e65726d-639f-4afa-9ecd-300d0bcab449", + "IsCustomNode": false, + "Description": null, + "Name": "OffsetFloorShapeSubElements", + "ElementResolver": { + "ResolutionMap": {} + }, + "Inputs": [], + "Outputs": [], + "Nodes": [ + { + "ConcreteType": "Dynamo.Graph.Nodes.ZeroTouch.DSFunction, DynamoCore", + "NodeType": "FunctionNode", + "FunctionSignature": "Revit.Elements.Floor.MovePoint@Autodesk.DesignScript.Geometry.Point,double", + "Id": "70b30ca7e2594381bb35a348e036e917", + "Inputs": [ + { + "Id": "e5583fe45ab149849f8ba7fd9c7a870b", + "Name": "floor", + "Description": "Revit.Elements.Floor", + "UsingDefaultValue": false, + "Level": 2, + "UseLevels": false, + "KeepListStructure": false + }, + { + "Id": "205c721ef7f94693895b47b5a8d11926", + "Name": "point", + "Description": "Point", + "UsingDefaultValue": false, + "Level": 2, + "UseLevels": false, + "KeepListStructure": false + }, + { + "Id": "4e8985bc8d7344d096be6b75e03deffa", + "Name": "offset", + "Description": "double", + "UsingDefaultValue": false, + "Level": 2, + "UseLevels": false, + "KeepListStructure": false + } + ], + "Outputs": [ + { + "Id": "a9557fd76b3b48b7b7d01a614f35ca7a", + "Name": "Floor", + "Description": "Floor", + "UsingDefaultValue": false, + "Level": 2, + "UseLevels": false, + "KeepListStructure": false + } + ], + "Replication": "Auto", + "Description": "Move an existing point in the slab shape editor by an offset. Behaves as moving a point manually in the slab shape editor.\n\nFloor.MovePoint (point: Point, offset: double): Floor" + }, + { + "ConcreteType": "Dynamo.Graph.Nodes.ZeroTouch.DSFunction, DynamoCore", + "NodeType": "FunctionNode", + "FunctionSignature": "Revit.Elements.Floor.Points", + "Id": "016e1d83285f47a2a6da4cf81cd3f05a", + "Inputs": [ + { + "Id": "3086c5decc7440ec9108734b0cabea56", + "Name": "floor", + "Description": "Revit.Elements.Floor", + "UsingDefaultValue": false, + "Level": 2, + "UseLevels": false, + "KeepListStructure": false + } + ], + "Outputs": [ + { + "Id": "4d8998354d9f487a9c9fcb9991cb2e48", + "Name": "Point[]", + "Description": "Point[]", + "UsingDefaultValue": false, + "Level": 2, + "UseLevels": false, + "KeepListStructure": false + } + ], + "Replication": "Auto", + "Description": "Get Slab Shape Points\n\nFloor.Points: Point[]" + }, + { + "ConcreteType": "Dynamo.Nodes.DSModelElementsSelection, DSRevitNodesUI", + "NodeType": "ExtensionNode", + "InstanceId": [ + "c3cf928f-0397-47c2-8e81-c29406ce6ebb-004c2d1d", + "c3cf928f-0397-47c2-8e81-c29406ce6ebb-004c2d29" + ], + "Id": "6665556123344f9884f6fa5cfaef3259", + "Inputs": [], + "Outputs": [ + { + "Id": "b2e0a5a608964cff86348080749fa3e0", + "Name": "Elements", + "Description": "The selected elements.", + "UsingDefaultValue": false, + "Level": 2, + "UseLevels": false, + "KeepListStructure": false + } + ], + "Replication": "Disabled" + }, + { + "ConcreteType": "Dynamo.Graph.Nodes.ZeroTouch.DSFunction, DynamoCore", + "NodeType": "FunctionNode", + "FunctionSignature": "DSCore.List.Count@var[]..[]", + "Id": "29f32775993f4fbc9bc329e6a094bedf", + "Inputs": [ + { + "Id": "960b439c066f49b98ed8aa1b1cc847e3", + "Name": "list", + "Description": "List to get the item count of.\n\nvar[]..[]", + "UsingDefaultValue": false, + "Level": 2, + "UseLevels": true, + "KeepListStructure": false + } + ], + "Outputs": [ + { + "Id": "1407a2fa199a4116b417ee2b602edf30", + "Name": "count", + "Description": "List length.", + "UsingDefaultValue": false, + "Level": 2, + "UseLevels": false, + "KeepListStructure": false + } + ], + "Replication": "Auto", + "Description": "Returns the number of items stored in the given list.\n\nList.Count (list: var[]..[]): int" + }, + { + "ConcreteType": "Dynamo.Graph.Nodes.ZeroTouch.DSFunction, DynamoCore", + "NodeType": "FunctionNode", + "FunctionSignature": "DSCore.List.Cycle@var[]..[],int", + "Id": "21f8c644f9b14db1a54456013b4e5e72", + "Inputs": [ + { + "Id": "bac73131722e411a9547ab4b48359b6a", + "Name": "list", + "Description": "List to repeat.\n\nvar[]..[]", + "UsingDefaultValue": false, + "Level": 1, + "UseLevels": true, + "KeepListStructure": true + }, + { + "Id": "23a04cf17e8b48a1abb414b954f29b09", + "Name": "amount", + "Description": "Number of times to repeat.\n\nint", + "UsingDefaultValue": false, + "Level": 1, + "UseLevels": true, + "KeepListStructure": false + } + ], + "Outputs": [ + { + "Id": "94eb8fd48c804abfa789c46376f98f80", + "Name": "list", + "Description": "List of repeated lists.", + "UsingDefaultValue": false, + "Level": 2, + "UseLevels": false, + "KeepListStructure": false + } + ], + "Replication": "Auto", + "Description": "Creates a new list by concatenining copies of a given list.\n\nList.Cycle (list: var[]..[], amount: int): var[]..[]" + }, + { + "ConcreteType": "Dynamo.Graph.Nodes.ZeroTouch.DSFunction, DynamoCore", + "NodeType": "FunctionNode", + "FunctionSignature": "DSCore.List.Flatten@var[]..[],int", + "Id": "57945ba6f0114e20b995f18efa8ae14d", + "Inputs": [ + { + "Id": "e70f367f0a1444a1bb5928650764df5c", + "Name": "list", + "Description": "List to flatten.\n\nvar[]..[]", + "UsingDefaultValue": false, + "Level": 2, + "UseLevels": false, + "KeepListStructure": false + }, + { + "Id": "76231eda596643cab476821f1b0b0e64", + "Name": "amt", + "Description": "Layers of nesting to remove.\n\nint\nDefault value : -1", + "UsingDefaultValue": true, + "Level": 2, + "UseLevels": false, + "KeepListStructure": false + } + ], + "Outputs": [ + { + "Id": "e7f2503f4f114225899fcd1d8b770119", + "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.Flatten@var[]..[],int", + "Id": "c17344f9d47d44c59737ff2b9e70a8a8", + "Inputs": [ + { + "Id": "92a7880ae1f64938b0445a952c2e4210", + "Name": "list", + "Description": "List to flatten.\n\nvar[]..[]", + "UsingDefaultValue": false, + "Level": 2, + "UseLevels": false, + "KeepListStructure": false + }, + { + "Id": "ec907ec9268e4f009852bd00c90f17dd", + "Name": "amt", + "Description": "Layers of nesting to remove.\n\nint\nDefault value : -1", + "UsingDefaultValue": true, + "Level": 2, + "UseLevels": false, + "KeepListStructure": false + } + ], + "Outputs": [ + { + "Id": "33c371cecc4541c8b19cc8536e2f5b1a", + "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": "CoreNodeModels.DynamoConvert, CoreNodeModels", + "NodeType": "ConvertBetweenUnitsNode", + "MeasurementType": "Length", + "FromConversion": "Centimeters", + "ToConversion": "Feet", + "Id": "8537a5bfd8594c8aa95a6204c34f5573", + "Inputs": [ + { + "Id": "0841789fbce54db6af2065e0216e926d", + "Name": "", + "Description": "A numeric value for conversion.", + "UsingDefaultValue": true, + "Level": 2, + "UseLevels": false, + "KeepListStructure": false + } + ], + "Outputs": [ + { + "Id": "9e9ae12dccf54dcb8f5ff88d005a6ae0", + "Name": "", + "Description": "A converted numeric value.", + "UsingDefaultValue": false, + "Level": 2, + "UseLevels": false, + "KeepListStructure": false + } + ], + "Replication": "Disabled", + "Description": "Convert between units of measure." + }, + { + "ConcreteType": "CoreNodeModels.Input.DoubleInput, CoreNodeModels", + "NodeType": "NumberInputNode", + "NumberType": "Double", + "InputValue": -7.0, + "Id": "d0cb6e65b39e4b7bab569d748f22ab15", + "Inputs": [], + "Outputs": [ + { + "Id": "7d8d0ff4bd3b4df0abf74d58382febbc", + "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": "Revit.Elements.Element.Parameters", + "Id": "67526104bdf64634bfde517091d8d67c", + "Inputs": [ + { + "Id": "a5a9af7c2b0c4cafb246b10a3cfa5ed6", + "Name": "element", + "Description": "Revit.Elements.Element", + "UsingDefaultValue": false, + "Level": 2, + "UseLevels": false, + "KeepListStructure": false + } + ], + "Outputs": [ + { + "Id": "7affd7250d194b33a757b29302ebccf4", + "Name": "Parameter[]", + "Description": "Parameter[]", + "UsingDefaultValue": false, + "Level": 2, + "UseLevels": false, + "KeepListStructure": false + } + ], + "Replication": "Auto", + "Description": "Obtain all of the Parameters from an Element, sorted by Name.\n\nElement.Parameters: Parameter[]" + }, + { + "ConcreteType": "Dynamo.Graph.Nodes.CustomNodes.Function, DynamoCore", + "FunctionSignature": "23a94b80-4bd0-436f-a1b1-f77654b4428c", + "FunctionType": "Graph", + "NodeType": "FunctionNode", + "Id": "6a4f5730930d4f29aeb15ccf9b7afd10", + "Inputs": [ + { + "Id": "53f3aee85a75455cadf5356da4252894", + "Name": "element", + "Description": "var[]..[]", + "UsingDefaultValue": false, + "Level": 2, + "UseLevels": false, + "KeepListStructure": false + } + ], + "Outputs": [ + { + "Id": "1df28ca0f4204aedb7b0173e0a557506", + "Name": "level", + "Description": "return value", + "UsingDefaultValue": false, + "Level": 2, + "UseLevels": false, + "KeepListStructure": false + } + ], + "Replication": "Auto", + "Description": "Gets an element's level" + }, + { + "ConcreteType": "Dynamo.Graph.Nodes.ZeroTouch.DSFunction, DynamoCore", + "NodeType": "FunctionNode", + "FunctionSignature": "Revit.Elements.Level.ProjectElevation", + "Id": "a886be87f3174ff99f59ed7aa24b6ca0", + "Inputs": [ + { + "Id": "1496cf608a4f4dd19f1cda196c3b7519", + "Name": "level", + "Description": "Revit.Elements.Level", + "UsingDefaultValue": false, + "Level": 2, + "UseLevels": false, + "KeepListStructure": false + } + ], + "Outputs": [ + { + "Id": "20bbb75798c64ed5906a9be1ac3cf2db", + "Name": "double", + "Description": "double", + "UsingDefaultValue": false, + "Level": 2, + "UseLevels": false, + "KeepListStructure": false + } + ], + "Replication": "Auto", + "Description": "Elevation relative to the Project origin\n\nLevel.ProjectElevation: double" + } + ], + "Connectors": [ + { + "Start": "4d8998354d9f487a9c9fcb9991cb2e48", + "End": "960b439c066f49b98ed8aa1b1cc847e3", + "Id": "3e1df2b1c23747dba39ef33931fa778c" + }, + { + "Start": "4d8998354d9f487a9c9fcb9991cb2e48", + "End": "e70f367f0a1444a1bb5928650764df5c", + "Id": "96e020b9eb254a29a906e9a4e203258d" + }, + { + "Start": "b2e0a5a608964cff86348080749fa3e0", + "End": "3086c5decc7440ec9108734b0cabea56", + "Id": "5e1c1f8869884ac0b1e482c84ca0b411" + }, + { + "Start": "b2e0a5a608964cff86348080749fa3e0", + "End": "bac73131722e411a9547ab4b48359b6a", + "Id": "7c0fda2e863045b0918648af4a93411c" + }, + { + "Start": "b2e0a5a608964cff86348080749fa3e0", + "End": "a5a9af7c2b0c4cafb246b10a3cfa5ed6", + "Id": "c575dcf432784a0688a2b7f88ffb31d5" + }, + { + "Start": "b2e0a5a608964cff86348080749fa3e0", + "End": "53f3aee85a75455cadf5356da4252894", + "Id": "d2ad8784454241d3bbfd61de1d4213a3" + }, + { + "Start": "1407a2fa199a4116b417ee2b602edf30", + "End": "23a04cf17e8b48a1abb414b954f29b09", + "Id": "ca83c0de97a64283b1512403aeedaaa3" + }, + { + "Start": "94eb8fd48c804abfa789c46376f98f80", + "End": "92a7880ae1f64938b0445a952c2e4210", + "Id": "d446def1fa26413a9d1a98f1d5c3d387" + }, + { + "Start": "e7f2503f4f114225899fcd1d8b770119", + "End": "205c721ef7f94693895b47b5a8d11926", + "Id": "115738e5d2ea4c3e9b0dd515c4c0bc22" + }, + { + "Start": "9e9ae12dccf54dcb8f5ff88d005a6ae0", + "End": "4e8985bc8d7344d096be6b75e03deffa", + "Id": "0272b7991ef746b3ad49c812d1de5dab" + }, + { + "Start": "7d8d0ff4bd3b4df0abf74d58382febbc", + "End": "0841789fbce54db6af2065e0216e926d", + "Id": "50a85fd64623401087f73f2455980286" + }, + { + "Start": "1df28ca0f4204aedb7b0173e0a557506", + "End": "1496cf608a4f4dd19f1cda196c3b7519", + "Id": "405d10147ae0437e83a6e2cc6da4070a" + } + ], + "Dependencies": [ + "23a94b80-4bd0-436f-a1b1-f77654b4428c" + ], + "Bindings": [], + "View": { + "Dynamo": { + "ScaleFactor": 1.0, + "HasRunWithoutCrash": true, + "IsVisibleInDynamoLibrary": true, + "Version": "2.0.2.6826", + "RunType": "Manual", + "RunPeriod": "1000" + }, + "Camera": { + "Name": "Background Preview", + "EyeX": -17.0, + "EyeY": 24.0, + "EyeZ": 50.0, + "LookX": 12.0, + "LookY": -13.0, + "LookZ": -58.0, + "UpX": 0.0, + "UpY": 1.0, + "UpZ": 0.0 + }, + "NodeViews": [ + { + "ShowGeometry": true, + "Name": "Floor.MovePoint", + "Id": "70b30ca7e2594381bb35a348e036e917", + "IsSetAsInput": false, + "IsSetAsOutput": false, + "Excluded": false, + "X": 521.5, + "Y": 456.5 + }, + { + "ShowGeometry": true, + "Name": "Floor.Points", + "Id": "016e1d83285f47a2a6da4cf81cd3f05a", + "IsSetAsInput": false, + "IsSetAsOutput": false, + "Excluded": false, + "X": -431.81829439586176, + "Y": 395.70124103034487 + }, + { + "ShowGeometry": true, + "Name": "Select Model Elements", + "Id": "6665556123344f9884f6fa5cfaef3259", + "IsSetAsInput": true, + "IsSetAsOutput": false, + "Excluded": false, + "X": -689.97335917450016, + "Y": 31.419713345661876 + }, + { + "ShowGeometry": true, + "Name": "List.Count", + "Id": "29f32775993f4fbc9bc329e6a094bedf", + "IsSetAsInput": false, + "IsSetAsOutput": false, + "Excluded": false, + "X": -185.844776857047, + "Y": 285.61213644487145 + }, + { + "ShowGeometry": true, + "Name": "List.Cycle", + "Id": "21f8c644f9b14db1a54456013b4e5e72", + "IsSetAsInput": false, + "IsSetAsOutput": false, + "Excluded": false, + "X": -17.519290583394877, + "Y": -34.331344706712571 + }, + { + "ShowGeometry": true, + "Name": "List.Flatten", + "Id": "57945ba6f0114e20b995f18efa8ae14d", + "IsSetAsInput": false, + "IsSetAsOutput": false, + "Excluded": false, + "X": 182.79256807634852, + "Y": 434.23944637426212 + }, + { + "ShowGeometry": true, + "Name": "List.Flatten", + "Id": "c17344f9d47d44c59737ff2b9e70a8a8", + "IsSetAsInput": false, + "IsSetAsOutput": false, + "Excluded": false, + "X": 278.4391527206144, + "Y": 138.19049390391558 + }, + { + "ShowGeometry": true, + "Name": "Convert Between Units", + "Id": "8537a5bfd8594c8aa95a6204c34f5573", + "IsSetAsInput": false, + "IsSetAsOutput": false, + "Excluded": false, + "X": -271.73629509646906, + "Y": 1891.3775034433684 + }, + { + "ShowGeometry": true, + "Name": "Offset[cm]", + "Id": "d0cb6e65b39e4b7bab569d748f22ab15", + "IsSetAsInput": false, + "IsSetAsOutput": false, + "Excluded": false, + "X": -455.25045703441708, + "Y": 1760.2327868571845 + }, + { + "ShowGeometry": true, + "Name": "Element.Parameters", + "Id": "67526104bdf64634bfde517091d8d67c", + "IsSetAsInput": false, + "IsSetAsOutput": false, + "Excluded": false, + "X": -564.08096126924681, + "Y": 953.51060763221847 + }, + { + "ShowGeometry": true, + "Name": "Element.Level", + "Id": "6a4f5730930d4f29aeb15ccf9b7afd10", + "IsSetAsInput": false, + "IsSetAsOutput": false, + "Excluded": false, + "X": -754.05120919094418, + "Y": 676.05038814832744 + }, + { + "ShowGeometry": true, + "Name": "Level.ProjectElevation", + "Id": "a886be87f3174ff99f59ed7aa24b6ca0", + "IsSetAsInput": false, + "IsSetAsOutput": false, + "Excluded": false, + "X": -441.91303350417195, + "Y": 736.55075078797961 + } + ], + "Annotations": [], + "X": 408.05748085796608, + "Y": 150.37752880018127, + "Zoom": 0.57686957693444885 + } +} \ No newline at end of file diff --git a/WIP/OffsetFloorShapeSubElements/readme.md b/WIP/OffsetFloorShapeSubElements/readme.md new file mode 100644 index 0000000..e69de29 diff --git a/nodes/2.x/ReplaceFollowingElements.dyf b/nodes/2.x/ReplaceFollowingElements.dyf new file mode 100644 index 0000000..9fffdba --- /dev/null +++ b/nodes/2.x/ReplaceFollowingElements.dyf @@ -0,0 +1,413 @@ +{ + "Uuid": "2344df3c-35d0-4ee4-b20a-6a7259317cfc", + "IsCustomNode": true, + "Category": "infeeeee.list", + "Description": "Replace same elements follow each other", + "Name": "ReplaceFollowingElements", + "ElementResolver": { + "ResolutionMap": { + "Lists": { + "Key": "archilab.Lists.Lists", + "Value": "archilab.dll" + }, + "DSCore.List": { + "Key": "DSCore.List", + "Value": "DSCoreNodes.dll" + } + } + }, + "Inputs": [], + "Outputs": [], + "Nodes": [ + { + "ConcreteType": "PythonNodeModels.PythonNode, PythonNodeModels", + "NodeType": "PythonScriptNode", + "Code": "# Enable Python support and load DesignScript library\r\nimport clr\r\nclr.AddReference('ProtoGeometry')\r\nfrom Autodesk.DesignScript.Geometry import *\r\n\r\n# The inputs to this node will be stored as a list in the IN variables.\r\nin_list = IN[0]\r\nsearchfor = IN[1]\r\nreplacement = IN[2]\r\ncountUnit = IN[3]\r\nOUT = []\r\nout_list_1 = []\r\nout_list_2 = []\r\n# Place your code below this line\r\nfor layerlists in in_list:\r\n\tlayerlist_mod = layerlists[:]\r\n\tfor num, width in enumerate(layerlists): \r\n\t#egyesével végig megyünk a vastagságokon\r\n\t\tzerocounter = []\r\n\t\tif width == searchfor :\r\n\t\t\tzerocounter.append(0)\r\n\t\t\tfor zero in layerlists[num + 1:]:\r\n\t\t\t\tif zero == searchfor:\r\n\t\t\t\t\tzerocounter.append(0)\r\n\t\t\t\telse:\r\n\t\t\t\t\tbreak\r\n\t\t\tif len(zerocounter) > 1:\r\n\t\t\t\tfor n, x in enumerate(zerocounter):\r\n\t\t\t\t\tlayerlists[num + n] = replacement\r\n\t\t\t\t\tlayerlist_mod[num + n] = replacement\r\n\t\t\t\tlayerlist_mod[num] = str(len(zerocounter)) + \" \" + countUnit\r\n\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\tout_list_1.append(layerlists)\r\n\tout_list_2.append(layerlist_mod)\r\n\r\n# Assign your output to the OUT variable.\r\nOUT.append(out_list_1)\r\nOUT.append(out_list_2)\r\n#OUT = out_list", + "VariableInputPorts": true, + "Id": "77e31556377b411b8eca6430ca11ea7e", + "Inputs": [ + { + "Id": "4bd6cc7e60ef4482957ae8b6be5484b3", + "Name": "IN[0]", + "Description": "Input #0", + "UsingDefaultValue": false, + "Level": 2, + "UseLevels": false, + "KeepListStructure": false + }, + { + "Id": "9f76375875fb475198839c3cd96a6b93", + "Name": "IN[1]", + "Description": "Input #1", + "UsingDefaultValue": false, + "Level": 2, + "UseLevels": false, + "KeepListStructure": false + }, + { + "Id": "03108eab5cae462996609a385ad0cf2c", + "Name": "IN[2]", + "Description": "Input #2", + "UsingDefaultValue": false, + "Level": 2, + "UseLevels": false, + "KeepListStructure": false + }, + { + "Id": "e65a5e27b9aa4ede932883f54d7fe4f0", + "Name": "IN[3]", + "Description": "Input #3", + "UsingDefaultValue": false, + "Level": 2, + "UseLevels": false, + "KeepListStructure": false + } + ], + "Outputs": [ + { + "Id": "2cac3dac1b12409d812c2f8647fdc1ea", + "Name": "OUT", + "Description": "Result of the python script", + "UsingDefaultValue": false, + "Level": 2, + "UseLevels": false, + "KeepListStructure": false + } + ], + "Replication": "Disabled", + "Description": "Runs an embedded IronPython script." + }, + { + "ConcreteType": "Dynamo.Graph.Nodes.CustomNodes.Symbol, DynamoCore", + "NodeType": "InputNode", + "Parameter": { + "Name": "list", + "TypeName": "var", + "TypeRank": -1, + "DefaultValue": null, + "Description": "" + }, + "Id": "44587089b7814ac2bc79a159b1015a85", + "Inputs": [], + "Outputs": [ + { + "Id": "2bbaa41ce22d43b98b9290a009efd045", + "Name": "", + "Description": "Symbol", + "UsingDefaultValue": false, + "Level": 2, + "UseLevels": false, + "KeepListStructure": false + } + ], + "Replication": "Disabled", + "Description": "A function parameter, use with custom nodes.\r\n\r\nYou can specify the type and default value for parameter. E.g.,\r\n\r\ninput : var[]..[]\r\nvalue : bool = false" + }, + { + "ConcreteType": "Dynamo.Graph.Nodes.CustomNodes.Symbol, DynamoCore", + "NodeType": "InputNode", + "Parameter": { + "Name": "searchFor", + "TypeName": "var", + "TypeRank": -1, + "DefaultValue": null, + "Description": "" + }, + "Id": "8478a0485a994131bd46e950bb38ccd4", + "Inputs": [], + "Outputs": [ + { + "Id": "ba2f0d709bae428dadc660fa30c60513", + "Name": "", + "Description": "Symbol", + "UsingDefaultValue": false, + "Level": 2, + "UseLevels": false, + "KeepListStructure": false + } + ], + "Replication": "Disabled", + "Description": "A function parameter, use with custom nodes.\r\n\r\nYou can specify the type and default value for parameter. E.g.,\r\n\r\ninput : var[]..[]\r\nvalue : bool = false" + }, + { + "ConcreteType": "Dynamo.Graph.Nodes.CustomNodes.Symbol, DynamoCore", + "NodeType": "InputNode", + "Parameter": { + "Name": "replacement", + "TypeName": "var", + "TypeRank": -1, + "DefaultValue": null, + "Description": "" + }, + "Id": "9abef8e9b0ff466e8bc5fb914a10366f", + "Inputs": [], + "Outputs": [ + { + "Id": "7841682405354ee883639688165f4a80", + "Name": "", + "Description": "Symbol", + "UsingDefaultValue": false, + "Level": 2, + "UseLevels": false, + "KeepListStructure": false + } + ], + "Replication": "Disabled", + "Description": "A function parameter, use with custom nodes.\r\n\r\nYou can specify the type and default value for parameter. E.g.,\r\n\r\ninput : var[]..[]\r\nvalue : bool = false" + }, + { + "ConcreteType": "Dynamo.Graph.Nodes.CustomNodes.Output, DynamoCore", + "NodeType": "OutputNode", + "ElementResolver": null, + "Symbol": "replacedList", + "Id": "a6e65063a91d4cadaea0b58a696701ce", + "Inputs": [ + { + "Id": "5b34c4f690d147d590be6eb74440c4ea", + "Name": "", + "Description": "", + "UsingDefaultValue": false, + "Level": 2, + "UseLevels": false, + "KeepListStructure": false + } + ], + "Outputs": [], + "Replication": "Disabled", + "Description": "A function output, use with custom nodes" + }, + { + "ConcreteType": "Dynamo.Graph.Nodes.CustomNodes.Symbol, DynamoCore", + "NodeType": "InputNode", + "Parameter": { + "Name": "countUnit", + "TypeName": "var", + "TypeRank": -1, + "DefaultValue": null, + "Description": "" + }, + "Id": "3455c7e5c60545aa8b031511838ff2e0", + "Inputs": [], + "Outputs": [ + { + "Id": "78217337dbaf437d9037cb56b500d0e8", + "Name": "", + "Description": "Symbol", + "UsingDefaultValue": false, + "Level": 2, + "UseLevels": false, + "KeepListStructure": false + } + ], + "Replication": "Disabled", + "Description": "A function parameter, use with custom nodes.\r\n\r\nYou can specify the type and default value for parameter. E.g.,\r\n\r\ninput : var[]..[]\r\nvalue : bool = false" + }, + { + "ConcreteType": "Dynamo.Graph.Nodes.CustomNodes.Output, DynamoCore", + "NodeType": "OutputNode", + "ElementResolver": null, + "Symbol": "firstReplacedList", + "Id": "5059007ac9d845399591ff1113cffe8f", + "Inputs": [ + { + "Id": "69ab7c827d094047826f4f64e1c82924", + "Name": "", + "Description": "", + "UsingDefaultValue": false, + "Level": 2, + "UseLevels": false, + "KeepListStructure": false + } + ], + "Outputs": [], + "Replication": "Disabled", + "Description": "A function output, use with custom nodes" + }, + { + "ConcreteType": "Dynamo.Graph.Nodes.CodeBlockNodeModel, DynamoCore", + "NodeType": "CodeBlockNode", + "Code": "a[0];\na[1];", + "Id": "381b76b9f59d406aaf93319c25918e79", + "Inputs": [ + { + "Id": "79e9e4162e7349bca96ee06a3d9693fc", + "Name": "a", + "Description": "a", + "UsingDefaultValue": false, + "Level": 2, + "UseLevels": false, + "KeepListStructure": false + } + ], + "Outputs": [ + { + "Id": "fcb38d32d6254873953f3aafd208001e", + "Name": "", + "Description": "Value of expression at line 1", + "UsingDefaultValue": false, + "Level": 2, + "UseLevels": false, + "KeepListStructure": false + }, + { + "Id": "aa7998aa8877457fa956aae658d1d4de", + "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" + } + ], + "Connectors": [ + { + "Start": "2cac3dac1b12409d812c2f8647fdc1ea", + "End": "79e9e4162e7349bca96ee06a3d9693fc", + "Id": "009d04d0e39042c3ac014652655d4791" + }, + { + "Start": "2bbaa41ce22d43b98b9290a009efd045", + "End": "4bd6cc7e60ef4482957ae8b6be5484b3", + "Id": "974842f317e04c20aa463b2bd86637ad" + }, + { + "Start": "ba2f0d709bae428dadc660fa30c60513", + "End": "9f76375875fb475198839c3cd96a6b93", + "Id": "f367b0aae3a64af192845f03a04d5c01" + }, + { + "Start": "7841682405354ee883639688165f4a80", + "End": "03108eab5cae462996609a385ad0cf2c", + "Id": "a73c7b76fca0412a94ac744c9515fb04" + }, + { + "Start": "78217337dbaf437d9037cb56b500d0e8", + "End": "e65a5e27b9aa4ede932883f54d7fe4f0", + "Id": "84ffc326e46b49e483f2f6e95689069d" + }, + { + "Start": "fcb38d32d6254873953f3aafd208001e", + "End": "5b34c4f690d147d590be6eb74440c4ea", + "Id": "48aab268bf724672a105904b7cac667d" + }, + { + "Start": "aa7998aa8877457fa956aae658d1d4de", + "End": "69ab7c827d094047826f4f64e1c82924", + "Id": "ed81307e6e8c465988f0becc6841fb17" + } + ], + "Dependencies": [], + "Bindings": [], + "View": { + "Dynamo": { + "ScaleFactor": 1.0, + "HasRunWithoutCrash": false, + "IsVisibleInDynamoLibrary": true, + "Version": "2.0.2.6826", + "RunType": "Manual", + "RunPeriod": "1000" + }, + "Camera": { + "Name": "Background Preview", + "EyeX": -17.0, + "EyeY": 24.0, + "EyeZ": 50.0, + "LookX": 12.0, + "LookY": -13.0, + "LookZ": -58.0, + "UpX": 0.0, + "UpY": 1.0, + "UpZ": 0.0 + }, + "NodeViews": [ + { + "ShowGeometry": true, + "Name": "Python Script", + "Id": "77e31556377b411b8eca6430ca11ea7e", + "IsSetAsInput": false, + "IsSetAsOutput": false, + "Excluded": false, + "X": 731.09482951290761, + "Y": 449.69653091009968 + }, + { + "ShowGeometry": true, + "Name": "Input", + "Id": "44587089b7814ac2bc79a159b1015a85", + "IsSetAsInput": false, + "IsSetAsOutput": false, + "Excluded": false, + "X": 348.5961952368678, + "Y": 342.64948490670116 + }, + { + "ShowGeometry": true, + "Name": "Input", + "Id": "8478a0485a994131bd46e950bb38ccd4", + "IsSetAsInput": false, + "IsSetAsOutput": false, + "Excluded": false, + "X": 405.72490243930486, + "Y": 453.9132224497277 + }, + { + "ShowGeometry": true, + "Name": "Input", + "Id": "9abef8e9b0ff466e8bc5fb914a10366f", + "IsSetAsInput": false, + "IsSetAsOutput": false, + "Excluded": false, + "X": 381.932288694968, + "Y": 540.658977642674 + }, + { + "ShowGeometry": true, + "Name": "Output", + "Id": "a6e65063a91d4cadaea0b58a696701ce", + "IsSetAsInput": false, + "IsSetAsOutput": false, + "Excluded": false, + "X": 1134.1067457170113, + "Y": 381.89895541340286 + }, + { + "ShowGeometry": true, + "Name": "Input", + "Id": "3455c7e5c60545aa8b031511838ff2e0", + "IsSetAsInput": false, + "IsSetAsOutput": false, + "Excluded": false, + "X": 389.17365259170657, + "Y": 643.8484131711989 + }, + { + "ShowGeometry": true, + "Name": "Output", + "Id": "5059007ac9d845399591ff1113cffe8f", + "IsSetAsInput": false, + "IsSetAsOutput": false, + "Excluded": false, + "X": 1125.96021133318, + "Y": 560.21754137059054 + }, + { + "ShowGeometry": true, + "Name": "Code Block", + "Id": "381b76b9f59d406aaf93319c25918e79", + "IsSetAsInput": false, + "IsSetAsOutput": false, + "Excluded": false, + "X": 905.29306876766179, + "Y": 449.47392406724794 + } + ], + "Annotations": [], + "X": 5.8411916845483347, + "Y": -135.64652827534235, + "Zoom": 1.1047642563030273 + } +} \ No newline at end of file diff --git a/nodes/2.x/ReplaceFollowingSameElements.dyf b/nodes/2.x/ReplaceFollowingSameElements.dyf new file mode 100644 index 0000000..46abbc6 --- /dev/null +++ b/nodes/2.x/ReplaceFollowingSameElements.dyf @@ -0,0 +1,399 @@ +{ + "Uuid": "dda914fd-aaf1-4ff4-a80c-dab136aa16cc", + "IsCustomNode": true, + "Category": "infeeeee.List", + "Description": "Replace tlements which are the same in a list of lists", + "Name": "ReplaceFollowingSameElements", + "ElementResolver": { + "ResolutionMap": {} + }, + "Inputs": [], + "Outputs": [], + "Nodes": [ + { + "ConcreteType": "Dynamo.Graph.Nodes.CustomNodes.Symbol, DynamoCore", + "NodeType": "InputNode", + "Parameter": { + "Name": "list", + "TypeName": "var", + "TypeRank": -1, + "DefaultValue": null, + "Description": "" + }, + "Id": "0c0a1d3a6aa548988fb6a7a81b3c21c7", + "Inputs": [], + "Outputs": [ + { + "Id": "3faab4aa3540445b8e23044f6914251b", + "Name": "", + "Description": "Symbol", + "UsingDefaultValue": false, + "Level": 2, + "UseLevels": false, + "KeepListStructure": false + } + ], + "Replication": "Disabled", + "Description": "A function parameter, use with custom nodes.\r\n\r\nYou can specify the type and default value for parameter. E.g.,\r\n\r\ninput : var[]..[]\r\nvalue : bool = false" + }, + { + "ConcreteType": "Dynamo.Graph.Nodes.CustomNodes.Symbol, DynamoCore", + "NodeType": "InputNode", + "Parameter": { + "Name": "replacement", + "TypeName": "var", + "TypeRank": -1, + "DefaultValue": null, + "Description": "" + }, + "Id": "730aa118437c4551853e9c9debd5002c", + "Inputs": [], + "Outputs": [ + { + "Id": "f0f72104272f404bb64f677f5cca55ca", + "Name": "", + "Description": "Symbol", + "UsingDefaultValue": false, + "Level": 2, + "UseLevels": false, + "KeepListStructure": false + } + ], + "Replication": "Disabled", + "Description": "A function parameter, use with custom nodes.\r\n\r\nYou can specify the type and default value for parameter. E.g.,\r\n\r\ninput : var[]..[]\r\nvalue : bool = false" + }, + { + "ConcreteType": "PythonNodeModels.PythonNode, PythonNodeModels", + "NodeType": "PythonScriptNode", + "Code": "# Enable Python support and load DesignScript library\r\nimport clr\r\nclr.AddReference('ProtoGeometry')\r\nfrom Autodesk.DesignScript.Geometry import *\r\n\r\n# The inputs to this node will be stored as a list in the IN variables.\r\nin_list = IN[0]\r\nreplacement = IN[1]\r\ncountUnit = IN[2]\r\nOUT = []\r\nout_list_1 = []\r\nout_list_2 = []\r\nout_list_3 = []\r\n# Place your code below this line\r\nfor layerlists in in_list:\r\n\tlayerlist_counted = layerlists[:]\r\n\tlayerlist_firstorig = layerlist_counted[:]\r\n\tfor num, val in enumerate(layerlists): \r\n\t#egyesével végig megyünk az elemeken\r\n\t\tvalcounter = []\r\n\t\tvalcounter.append(0)\r\n\t\tfor val2 in layerlists[num + 1:]:\r\n\t\t\tif val2 == val:\r\n\t\t\t\tvalcounter.append(0)\r\n\t\t\telse:\r\n\t\t\t\tbreak\r\n\t\tif len(valcounter) > 1:\r\n\t\t\tfor n, x in enumerate(valcounter):\r\n\t\t\t\tlayerlists[num + n] = replacement\r\n\t\t\t\tlayerlist_counted[num + n] = replacement\r\n\t\t\t\tlayerlist_firstorig[num + n] = replacement\r\n\t\t\tlayerlist_counted[num] = str(len(valcounter)) + \" \" + countUnit\r\n\t\t\tlayerlist_firstorig[num] = val\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\tout_list_1.append(layerlists)\r\n\tout_list_2.append(layerlist_counted)\r\n\tout_list_3.append(layerlist_firstorig)\r\n\r\n# Assign your output to the OUT variable.\r\nOUT.append(out_list_1)\r\nOUT.append(out_list_2)\r\nOUT.append(out_list_3)\r\n#OUT = out_list", + "VariableInputPorts": true, + "Id": "12e5518647694bff8a916dc5d5299455", + "Inputs": [ + { + "Id": "b14a4d57188f4840a6cb2b16f87b61a9", + "Name": "IN[0]", + "Description": "Input #0", + "UsingDefaultValue": false, + "Level": 2, + "UseLevels": false, + "KeepListStructure": false + }, + { + "Id": "b5e8f31efe5040059de70f996ba55d4e", + "Name": "IN[1]", + "Description": "Input #1", + "UsingDefaultValue": false, + "Level": 2, + "UseLevels": false, + "KeepListStructure": false + }, + { + "Id": "81f06635c538400e9bace1f3a4551d2f", + "Name": "IN[2]", + "Description": "Input #2", + "UsingDefaultValue": false, + "Level": 2, + "UseLevels": false, + "KeepListStructure": false + } + ], + "Outputs": [ + { + "Id": "12aa77f667a24dc9becc0c63d839554c", + "Name": "OUT", + "Description": "Result of the python script", + "UsingDefaultValue": false, + "Level": 2, + "UseLevels": false, + "KeepListStructure": false + } + ], + "Replication": "Disabled", + "Description": "Runs an embedded IronPython script." + }, + { + "ConcreteType": "Dynamo.Graph.Nodes.CustomNodes.Symbol, DynamoCore", + "NodeType": "InputNode", + "Parameter": { + "Name": "countUnit", + "TypeName": "var", + "TypeRank": -1, + "DefaultValue": null, + "Description": "" + }, + "Id": "5a1034e0a87a415c8ea8772cb855e56c", + "Inputs": [], + "Outputs": [ + { + "Id": "bbda9e86ba694081b62614771ab7ce9c", + "Name": "", + "Description": "Symbol", + "UsingDefaultValue": false, + "Level": 2, + "UseLevels": false, + "KeepListStructure": false + } + ], + "Replication": "Disabled", + "Description": "A function parameter, use with custom nodes.\r\n\r\nYou can specify the type and default value for parameter. E.g.,\r\n\r\ninput : var[]..[]\r\nvalue : bool = false" + }, + { + "ConcreteType": "Dynamo.Graph.Nodes.CodeBlockNodeModel, DynamoCore", + "NodeType": "CodeBlockNode", + "Code": "a[0];\na[1];\na[2];", + "Id": "25e83c483fcb4ac0a94ddc37c94cd51b", + "Inputs": [ + { + "Id": "43408247d95d4065ac0f90447ccb1e5d", + "Name": "a", + "Description": "a", + "UsingDefaultValue": false, + "Level": 2, + "UseLevels": false, + "KeepListStructure": false + } + ], + "Outputs": [ + { + "Id": "af8079cabc5740b1b252cca7e5ef9db3", + "Name": "", + "Description": "Value of expression at line 1", + "UsingDefaultValue": false, + "Level": 2, + "UseLevels": false, + "KeepListStructure": false + }, + { + "Id": "7ceeae4fc20b4e819fc5c86d2a4da933", + "Name": "", + "Description": "Value of expression at line 2", + "UsingDefaultValue": false, + "Level": 2, + "UseLevels": false, + "KeepListStructure": false + }, + { + "Id": "8863ae73176f483fadfa2930ea1f2b00", + "Name": "", + "Description": "Value of expression at line 3", + "UsingDefaultValue": false, + "Level": 2, + "UseLevels": false, + "KeepListStructure": false + } + ], + "Replication": "Disabled", + "Description": "Allows for DesignScript code to be authored directly" + }, + { + "ConcreteType": "Dynamo.Graph.Nodes.CustomNodes.Output, DynamoCore", + "NodeType": "OutputNode", + "ElementResolver": null, + "Symbol": "allReplaced", + "Id": "b5119e42958347a6bf70e03d38ce165e", + "Inputs": [ + { + "Id": "446a139cdee54bb68f5fbe3ec6094ab5", + "Name": "", + "Description": "", + "UsingDefaultValue": false, + "Level": 2, + "UseLevels": false, + "KeepListStructure": false + } + ], + "Outputs": [], + "Replication": "Disabled", + "Description": "A function output, use with custom nodes" + }, + { + "ConcreteType": "Dynamo.Graph.Nodes.CustomNodes.Output, DynamoCore", + "NodeType": "OutputNode", + "ElementResolver": null, + "Symbol": "firstCounted", + "Id": "3e1c7ac77e934e9e8bebef372e5c8d30", + "Inputs": [ + { + "Id": "6880f9d3165e4b6b813a0cec0ce0f2e8", + "Name": "", + "Description": "", + "UsingDefaultValue": false, + "Level": 2, + "UseLevels": false, + "KeepListStructure": false + } + ], + "Outputs": [], + "Replication": "Disabled", + "Description": "A function output, use with custom nodes" + }, + { + "ConcreteType": "Dynamo.Graph.Nodes.CustomNodes.Output, DynamoCore", + "NodeType": "OutputNode", + "ElementResolver": null, + "Symbol": "firstOriginal", + "Id": "97af8bd3f2204fb0a393342ce6332531", + "Inputs": [ + { + "Id": "b69de9eb3e2d4855958ae98727a234fb", + "Name": "", + "Description": "", + "UsingDefaultValue": false, + "Level": 2, + "UseLevels": false, + "KeepListStructure": false + } + ], + "Outputs": [], + "Replication": "Disabled", + "Description": "A function output, use with custom nodes" + } + ], + "Connectors": [ + { + "Start": "3faab4aa3540445b8e23044f6914251b", + "End": "b14a4d57188f4840a6cb2b16f87b61a9", + "Id": "36bcc43d3d4f4df4b2000f046cbeb306" + }, + { + "Start": "f0f72104272f404bb64f677f5cca55ca", + "End": "b5e8f31efe5040059de70f996ba55d4e", + "Id": "3428f5ec1dd34712a15a881d2fa7228d" + }, + { + "Start": "12aa77f667a24dc9becc0c63d839554c", + "End": "43408247d95d4065ac0f90447ccb1e5d", + "Id": "d023601ba34b4001a63cc10d4ad14be1" + }, + { + "Start": "bbda9e86ba694081b62614771ab7ce9c", + "End": "81f06635c538400e9bace1f3a4551d2f", + "Id": "068d3b5149a04fb7a5cc66a986443cb7" + }, + { + "Start": "af8079cabc5740b1b252cca7e5ef9db3", + "End": "446a139cdee54bb68f5fbe3ec6094ab5", + "Id": "ae722ecf33f14b4eb0ce065ad89a0821" + }, + { + "Start": "7ceeae4fc20b4e819fc5c86d2a4da933", + "End": "6880f9d3165e4b6b813a0cec0ce0f2e8", + "Id": "676c08870e8843d6951f897877bc63af" + }, + { + "Start": "8863ae73176f483fadfa2930ea1f2b00", + "End": "b69de9eb3e2d4855958ae98727a234fb", + "Id": "13124606c57a44e3b9174ef14883f9c1" + } + ], + "Dependencies": [], + "Bindings": [], + "View": { + "Dynamo": { + "ScaleFactor": 1.0, + "HasRunWithoutCrash": false, + "IsVisibleInDynamoLibrary": true, + "Version": "2.0.2.6826", + "RunType": "Manual", + "RunPeriod": "1000" + }, + "Camera": { + "Name": "Background Preview", + "EyeX": -17.0, + "EyeY": 24.0, + "EyeZ": 50.0, + "LookX": 12.0, + "LookY": -13.0, + "LookZ": -58.0, + "UpX": 0.0, + "UpY": 1.0, + "UpZ": 0.0 + }, + "NodeViews": [ + { + "ShowGeometry": true, + "Name": "Input", + "Id": "0c0a1d3a6aa548988fb6a7a81b3c21c7", + "IsSetAsInput": false, + "IsSetAsOutput": false, + "Excluded": false, + "X": 885.0, + "Y": 537.5 + }, + { + "ShowGeometry": true, + "Name": "Input", + "Id": "730aa118437c4551853e9c9debd5002c", + "IsSetAsInput": false, + "IsSetAsOutput": false, + "Excluded": false, + "X": 794.33609345810009, + "Y": 832.509492735973 + }, + { + "ShowGeometry": true, + "Name": "Python Script", + "Id": "12e5518647694bff8a916dc5d5299455", + "IsSetAsInput": false, + "IsSetAsOutput": false, + "Excluded": false, + "X": 1267.4986342760399, + "Y": 644.547046003399 + }, + { + "ShowGeometry": true, + "Name": "Input", + "Id": "5a1034e0a87a415c8ea8772cb855e56c", + "IsSetAsInput": false, + "IsSetAsOutput": false, + "Excluded": false, + "X": 801.577457354839, + "Y": 935.698928264498 + }, + { + "ShowGeometry": true, + "Name": "Code Block", + "Id": "25e83c483fcb4ac0a94ddc37c94cd51b", + "IsSetAsInput": false, + "IsSetAsOutput": false, + "Excluded": false, + "X": 1441.6968735307942, + "Y": 644.324439160547 + }, + { + "ShowGeometry": true, + "Name": "Output", + "Id": "b5119e42958347a6bf70e03d38ce165e", + "IsSetAsInput": false, + "IsSetAsOutput": false, + "Excluded": false, + "X": 1670.510550480142, + "Y": 576.749470506702 + }, + { + "ShowGeometry": true, + "Name": "Output", + "Id": "3e1c7ac77e934e9e8bebef372e5c8d30", + "IsSetAsInput": false, + "IsSetAsOutput": false, + "Excluded": false, + "X": 1654.3640160963121, + "Y": 653.06805646389 + }, + { + "ShowGeometry": true, + "Name": "Output", + "Id": "97af8bd3f2204fb0a393342ce6332531", + "IsSetAsInput": false, + "IsSetAsOutput": false, + "Excluded": false, + "X": 1660.3640160963121, + "Y": 830.06805646389 + } + ], + "Annotations": [], + "X": -487.0, + "Y": -265.0, + "Zoom": 1.0 + } +} \ No newline at end of file diff --git a/nodes/2.x/ReplaceFollowingSameElements.py b/nodes/2.x/ReplaceFollowingSameElements.py new file mode 100644 index 0000000..d621b45 --- /dev/null +++ b/nodes/2.x/ReplaceFollowingSameElements.py @@ -0,0 +1,44 @@ +# Enable Python support and load DesignScript library +import clr +clr.AddReference('ProtoGeometry') +from Autodesk.DesignScript.Geometry import * + +# The inputs to this node will be stored as a list in the IN variables. +in_list = IN[0] +replacement = IN[1] +countUnit = IN[2] +OUT = [] +out_list_1 = [] +out_list_2 = [] +out_list_3 = [] +# Place your code below this line +for layerlists in in_list: + layerlist_counted = layerlists[:] + layerlist_firstorig = layerlist_counted[:] + for num, val in enumerate(layerlists): + #egyesével végig megyünk az elemeken + valcounter = [] + valcounter.append(0) + for val2 in layerlists[num + 1:]: + if val2 == val: + valcounter.append(0) + else: + break + if len(valcounter) > 1: + for n, x in enumerate(valcounter): + layerlists[num + n] = replacement + layerlist_counted[num + n] = replacement + layerlist_firstorig[num + n] = replacement + layerlist_counted[num] = str(len(valcounter)) + " " + countUnit + layerlist_firstorig[num] = val + + + out_list_1.append(layerlists) + out_list_2.append(layerlist_counted) + out_list_3.append(layerlist_firstorig) + +# Assign your output to the OUT variable. +OUT.append(out_list_1) +OUT.append(out_list_2) +OUT.append(out_list_3) +#OUT = out_list \ No newline at end of file