[
 {
  "op": "add",
  "path": "/ResourceTypes/AWS::Greengrass::ConnectorDefinition",
  "value": {
   "Attributes": {
    "Arn": {
     "PrimitiveType": "String"
    },
    "Id": {
     "PrimitiveType": "String"
    },
    "LatestVersionArn": {
     "PrimitiveType": "String"
    },
    "Name": {
     "PrimitiveType": "String"
    }
   },
   "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-connectordefinition.html",
   "Properties": {
    "InitialVersion": {
     "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-connectordefinition.html#cfn-greengrass-connectordefinition-initialversion",
     "Required": false,
     "Type": "ConnectorDefinitionVersion",
     "UpdateType": "Immutable"
    },
    "Name": {
     "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-connectordefinition.html#cfn-greengrass-connectordefinition-name",
     "PrimitiveType": "String",
     "Required": true,
     "UpdateType": "Mutable"
    },
    "Tags": {
     "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-connectordefinition.html#cfn-greengrass-connectordefinition-tags",
     "PrimitiveType": "Json",
     "Required": false,
     "UpdateType": "Mutable"
    }
   }
  }
 },
 {
  "op": "add",
  "path": "/ResourceTypes/AWS::Greengrass::ConnectorDefinitionVersion",
  "value": {
   "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-connectordefinitionversion.html",
   "Properties": {
    "ConnectorDefinitionId": {
     "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-connectordefinitionversion.html#cfn-greengrass-connectordefinitionversion-connectordefinitionid",
     "PrimitiveType": "String",
     "Required": true,
     "UpdateType": "Immutable"
    },
    "Connectors": {
     "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-connectordefinitionversion.html#cfn-greengrass-connectordefinitionversion-connectors",
     "ItemType": "Connector",
     "Required": true,
     "Type": "List",
     "UpdateType": "Immutable"
    }
   }
  }
 },
 {
  "op": "add",
  "path": "/ResourceTypes/AWS::Greengrass::CoreDefinition",
  "value": {
   "Attributes": {
    "Arn": {
     "PrimitiveType": "String"
    },
    "Id": {
     "PrimitiveType": "String"
    },
    "LatestVersionArn": {
     "PrimitiveType": "String"
    },
    "Name": {
     "PrimitiveType": "String"
    }
   },
   "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-coredefinition.html",
   "Properties": {
    "InitialVersion": {
     "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-coredefinition.html#cfn-greengrass-coredefinition-initialversion",
     "Required": false,
     "Type": "CoreDefinitionVersion",
     "UpdateType": "Immutable"
    },
    "Name": {
     "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-coredefinition.html#cfn-greengrass-coredefinition-name",
     "PrimitiveType": "String",
     "Required": true,
     "UpdateType": "Mutable"
    },
    "Tags": {
     "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-coredefinition.html#cfn-greengrass-coredefinition-tags",
     "PrimitiveType": "Json",
     "Required": false,
     "UpdateType": "Mutable"
    }
   }
  }
 },
 {
  "op": "add",
  "path": "/ResourceTypes/AWS::Greengrass::CoreDefinitionVersion",
  "value": {
   "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-coredefinitionversion.html",
   "Properties": {
    "CoreDefinitionId": {
     "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-coredefinitionversion.html#cfn-greengrass-coredefinitionversion-coredefinitionid",
     "PrimitiveType": "String",
     "Required": true,
     "UpdateType": "Immutable"
    },
    "Cores": {
     "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-coredefinitionversion.html#cfn-greengrass-coredefinitionversion-cores",
     "ItemType": "Core",
     "Required": true,
     "Type": "List",
     "UpdateType": "Immutable"
    }
   }
  }
 },
 {
  "op": "add",
  "path": "/ResourceTypes/AWS::Greengrass::DeviceDefinition",
  "value": {
   "Attributes": {
    "Arn": {
     "PrimitiveType": "String"
    },
    "Id": {
     "PrimitiveType": "String"
    },
    "LatestVersionArn": {
     "PrimitiveType": "String"
    },
    "Name": {
     "PrimitiveType": "String"
    }
   },
   "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-devicedefinition.html",
   "Properties": {
    "InitialVersion": {
     "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-devicedefinition.html#cfn-greengrass-devicedefinition-initialversion",
     "Required": false,
     "Type": "DeviceDefinitionVersion",
     "UpdateType": "Immutable"
    },
    "Name": {
     "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-devicedefinition.html#cfn-greengrass-devicedefinition-name",
     "PrimitiveType": "String",
     "Required": true,
     "UpdateType": "Mutable"
    },
    "Tags": {
     "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-devicedefinition.html#cfn-greengrass-devicedefinition-tags",
     "PrimitiveType": "Json",
     "Required": false,
     "UpdateType": "Mutable"
    }
   }
  }
 },
 {
  "op": "add",
  "path": "/ResourceTypes/AWS::Greengrass::DeviceDefinitionVersion",
  "value": {
   "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-devicedefinitionversion.html",
   "Properties": {
    "DeviceDefinitionId": {
     "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-devicedefinitionversion.html#cfn-greengrass-devicedefinitionversion-devicedefinitionid",
     "PrimitiveType": "String",
     "Required": true,
     "UpdateType": "Immutable"
    },
    "Devices": {
     "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-devicedefinitionversion.html#cfn-greengrass-devicedefinitionversion-devices",
     "ItemType": "Device",
     "Required": true,
     "Type": "List",
     "UpdateType": "Immutable"
    }
   }
  }
 },
 {
  "op": "add",
  "path": "/ResourceTypes/AWS::Greengrass::FunctionDefinition",
  "value": {
   "Attributes": {
    "Arn": {
     "PrimitiveType": "String"
    },
    "Id": {
     "PrimitiveType": "String"
    },
    "LatestVersionArn": {
     "PrimitiveType": "String"
    },
    "Name": {
     "PrimitiveType": "String"
    }
   },
   "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-functiondefinition.html",
   "Properties": {
    "InitialVersion": {
     "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-functiondefinition.html#cfn-greengrass-functiondefinition-initialversion",
     "Required": false,
     "Type": "FunctionDefinitionVersion",
     "UpdateType": "Immutable"
    },
    "Name": {
     "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-functiondefinition.html#cfn-greengrass-functiondefinition-name",
     "PrimitiveType": "String",
     "Required": true,
     "UpdateType": "Mutable"
    },
    "Tags": {
     "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-functiondefinition.html#cfn-greengrass-functiondefinition-tags",
     "PrimitiveType": "Json",
     "Required": false,
     "UpdateType": "Mutable"
    }
   }
  }
 },
 {
  "op": "add",
  "path": "/ResourceTypes/AWS::Greengrass::FunctionDefinitionVersion",
  "value": {
   "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-functiondefinitionversion.html",
   "Properties": {
    "DefaultConfig": {
     "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-functiondefinitionversion.html#cfn-greengrass-functiondefinitionversion-defaultconfig",
     "Required": false,
     "Type": "DefaultConfig",
     "UpdateType": "Immutable"
    },
    "FunctionDefinitionId": {
     "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-functiondefinitionversion.html#cfn-greengrass-functiondefinitionversion-functiondefinitionid",
     "PrimitiveType": "String",
     "Required": true,
     "UpdateType": "Immutable"
    },
    "Functions": {
     "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-functiondefinitionversion.html#cfn-greengrass-functiondefinitionversion-functions",
     "ItemType": "Function",
     "Required": true,
     "Type": "List",
     "UpdateType": "Immutable"
    }
   }
  }
 },
 {
  "op": "add",
  "path": "/ResourceTypes/AWS::Greengrass::Group",
  "value": {
   "Attributes": {
    "Arn": {
     "PrimitiveType": "String"
    },
    "Id": {
     "PrimitiveType": "String"
    },
    "LatestVersionArn": {
     "PrimitiveType": "String"
    },
    "Name": {
     "PrimitiveType": "String"
    },
    "RoleArn": {
     "PrimitiveType": "String"
    },
    "RoleAttachedAt": {
     "PrimitiveType": "String"
    }
   },
   "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-group.html",
   "Properties": {
    "InitialVersion": {
     "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-group.html#cfn-greengrass-group-initialversion",
     "Required": false,
     "Type": "GroupVersion",
     "UpdateType": "Immutable"
    },
    "Name": {
     "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-group.html#cfn-greengrass-group-name",
     "PrimitiveType": "String",
     "Required": true,
     "UpdateType": "Mutable"
    },
    "RoleArn": {
     "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-group.html#cfn-greengrass-group-rolearn",
     "PrimitiveType": "String",
     "Required": false,
     "UpdateType": "Mutable"
    },
    "Tags": {
     "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-group.html#cfn-greengrass-group-tags",
     "PrimitiveType": "Json",
     "Required": false,
     "UpdateType": "Mutable"
    }
   }
  }
 },
 {
  "op": "add",
  "path": "/ResourceTypes/AWS::Greengrass::GroupVersion",
  "value": {
   "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-groupversion.html",
   "Properties": {
    "ConnectorDefinitionVersionArn": {
     "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-groupversion.html#cfn-greengrass-groupversion-connectordefinitionversionarn",
     "PrimitiveType": "String",
     "Required": false,
     "UpdateType": "Immutable"
    },
    "CoreDefinitionVersionArn": {
     "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-groupversion.html#cfn-greengrass-groupversion-coredefinitionversionarn",
     "PrimitiveType": "String",
     "Required": false,
     "UpdateType": "Immutable"
    },
    "DeviceDefinitionVersionArn": {
     "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-groupversion.html#cfn-greengrass-groupversion-devicedefinitionversionarn",
     "PrimitiveType": "String",
     "Required": false,
     "UpdateType": "Immutable"
    },
    "FunctionDefinitionVersionArn": {
     "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-groupversion.html#cfn-greengrass-groupversion-functiondefinitionversionarn",
     "PrimitiveType": "String",
     "Required": false,
     "UpdateType": "Immutable"
    },
    "GroupId": {
     "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-groupversion.html#cfn-greengrass-groupversion-groupid",
     "PrimitiveType": "String",
     "Required": true,
     "UpdateType": "Immutable"
    },
    "LoggerDefinitionVersionArn": {
     "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-groupversion.html#cfn-greengrass-groupversion-loggerdefinitionversionarn",
     "PrimitiveType": "String",
     "Required": false,
     "UpdateType": "Immutable"
    },
    "ResourceDefinitionVersionArn": {
     "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-groupversion.html#cfn-greengrass-groupversion-resourcedefinitionversionarn",
     "PrimitiveType": "String",
     "Required": false,
     "UpdateType": "Immutable"
    },
    "SubscriptionDefinitionVersionArn": {
     "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-groupversion.html#cfn-greengrass-groupversion-subscriptiondefinitionversionarn",
     "PrimitiveType": "String",
     "Required": false,
     "UpdateType": "Immutable"
    }
   }
  }
 },
 {
  "op": "add",
  "path": "/ResourceTypes/AWS::Greengrass::LoggerDefinition",
  "value": {
   "Attributes": {
    "Arn": {
     "PrimitiveType": "String"
    },
    "Id": {
     "PrimitiveType": "String"
    },
    "LatestVersionArn": {
     "PrimitiveType": "String"
    },
    "Name": {
     "PrimitiveType": "String"
    }
   },
   "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-loggerdefinition.html",
   "Properties": {
    "InitialVersion": {
     "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-loggerdefinition.html#cfn-greengrass-loggerdefinition-initialversion",
     "Required": false,
     "Type": "LoggerDefinitionVersion",
     "UpdateType": "Immutable"
    },
    "Name": {
     "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-loggerdefinition.html#cfn-greengrass-loggerdefinition-name",
     "PrimitiveType": "String",
     "Required": true,
     "UpdateType": "Mutable"
    },
    "Tags": {
     "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-loggerdefinition.html#cfn-greengrass-loggerdefinition-tags",
     "PrimitiveType": "Json",
     "Required": false,
     "UpdateType": "Mutable"
    }
   }
  }
 },
 {
  "op": "add",
  "path": "/ResourceTypes/AWS::Greengrass::LoggerDefinitionVersion",
  "value": {
   "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-loggerdefinitionversion.html",
   "Properties": {
    "LoggerDefinitionId": {
     "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-loggerdefinitionversion.html#cfn-greengrass-loggerdefinitionversion-loggerdefinitionid",
     "PrimitiveType": "String",
     "Required": true,
     "UpdateType": "Immutable"
    },
    "Loggers": {
     "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-loggerdefinitionversion.html#cfn-greengrass-loggerdefinitionversion-loggers",
     "ItemType": "Logger",
     "Required": true,
     "Type": "List",
     "UpdateType": "Immutable"
    }
   }
  }
 },
 {
  "op": "add",
  "path": "/ResourceTypes/AWS::Greengrass::ResourceDefinition",
  "value": {
   "Attributes": {
    "Arn": {
     "PrimitiveType": "String"
    },
    "Id": {
     "PrimitiveType": "String"
    },
    "LatestVersionArn": {
     "PrimitiveType": "String"
    },
    "Name": {
     "PrimitiveType": "String"
    }
   },
   "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-resourcedefinition.html",
   "Properties": {
    "InitialVersion": {
     "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-resourcedefinition.html#cfn-greengrass-resourcedefinition-initialversion",
     "Required": false,
     "Type": "ResourceDefinitionVersion",
     "UpdateType": "Immutable"
    },
    "Name": {
     "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-resourcedefinition.html#cfn-greengrass-resourcedefinition-name",
     "PrimitiveType": "String",
     "Required": true,
     "UpdateType": "Mutable"
    },
    "Tags": {
     "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-resourcedefinition.html#cfn-greengrass-resourcedefinition-tags",
     "PrimitiveType": "Json",
     "Required": false,
     "UpdateType": "Mutable"
    }
   }
  }
 },
 {
  "op": "add",
  "path": "/ResourceTypes/AWS::Greengrass::ResourceDefinitionVersion",
  "value": {
   "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-resourcedefinitionversion.html",
   "Properties": {
    "ResourceDefinitionId": {
     "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-resourcedefinitionversion.html#cfn-greengrass-resourcedefinitionversion-resourcedefinitionid",
     "PrimitiveType": "String",
     "Required": true,
     "UpdateType": "Immutable"
    },
    "Resources": {
     "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-resourcedefinitionversion.html#cfn-greengrass-resourcedefinitionversion-resources",
     "ItemType": "ResourceInstance",
     "Required": true,
     "Type": "List",
     "UpdateType": "Immutable"
    }
   }
  }
 },
 {
  "op": "add",
  "path": "/ResourceTypes/AWS::Greengrass::SubscriptionDefinition",
  "value": {
   "Attributes": {
    "Arn": {
     "PrimitiveType": "String"
    },
    "Id": {
     "PrimitiveType": "String"
    },
    "LatestVersionArn": {
     "PrimitiveType": "String"
    },
    "Name": {
     "PrimitiveType": "String"
    }
   },
   "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-subscriptiondefinition.html",
   "Properties": {
    "InitialVersion": {
     "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-subscriptiondefinition.html#cfn-greengrass-subscriptiondefinition-initialversion",
     "Required": false,
     "Type": "SubscriptionDefinitionVersion",
     "UpdateType": "Immutable"
    },
    "Name": {
     "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-subscriptiondefinition.html#cfn-greengrass-subscriptiondefinition-name",
     "PrimitiveType": "String",
     "Required": true,
     "UpdateType": "Mutable"
    },
    "Tags": {
     "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-subscriptiondefinition.html#cfn-greengrass-subscriptiondefinition-tags",
     "PrimitiveType": "Json",
     "Required": false,
     "UpdateType": "Mutable"
    }
   }
  }
 },
 {
  "op": "add",
  "path": "/ResourceTypes/AWS::Greengrass::SubscriptionDefinitionVersion",
  "value": {
   "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-subscriptiondefinitionversion.html",
   "Properties": {
    "SubscriptionDefinitionId": {
     "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-subscriptiondefinitionversion.html#cfn-greengrass-subscriptiondefinitionversion-subscriptiondefinitionid",
     "PrimitiveType": "String",
     "Required": true,
     "UpdateType": "Immutable"
    },
    "Subscriptions": {
     "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-subscriptiondefinitionversion.html#cfn-greengrass-subscriptiondefinitionversion-subscriptions",
     "ItemType": "Subscription",
     "Required": true,
     "Type": "List",
     "UpdateType": "Immutable"
    }
   }
  }
 },
 {
  "op": "add",
  "path": "/PropertyTypes/AWS::Greengrass::ConnectorDefinition.Connector",
  "value": {
   "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-connectordefinition-connector.html",
   "Properties": {
    "ConnectorArn": {
     "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-connectordefinition-connector.html#cfn-greengrass-connectordefinition-connector-connectorarn",
     "PrimitiveType": "String",
     "Required": true,
     "UpdateType": "Immutable"
    },
    "Id": {
     "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-connectordefinition-connector.html#cfn-greengrass-connectordefinition-connector-id",
     "PrimitiveType": "String",
     "Required": true,
     "UpdateType": "Immutable"
    },
    "Parameters": {
     "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-connectordefinition-connector.html#cfn-greengrass-connectordefinition-connector-parameters",
     "PrimitiveType": "Json",
     "Required": false,
     "UpdateType": "Immutable"
    }
   }
  }
 },
 {
  "op": "add",
  "path": "/PropertyTypes/AWS::Greengrass::ConnectorDefinition.ConnectorDefinitionVersion",
  "value": {
   "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-connectordefinition-connectordefinitionversion.html",
   "Properties": {
    "Connectors": {
     "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-connectordefinition-connectordefinitionversion.html#cfn-greengrass-connectordefinition-connectordefinitionversion-connectors",
     "ItemType": "Connector",
     "Required": true,
     "Type": "List",
     "UpdateType": "Immutable"
    }
   }
  }
 },
 {
  "op": "add",
  "path": "/PropertyTypes/AWS::Greengrass::ConnectorDefinitionVersion.Connector",
  "value": {
   "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-connectordefinitionversion-connector.html",
   "Properties": {
    "ConnectorArn": {
     "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-connectordefinitionversion-connector.html#cfn-greengrass-connectordefinitionversion-connector-connectorarn",
     "PrimitiveType": "String",
     "Required": true,
     "UpdateType": "Immutable"
    },
    "Id": {
     "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-connectordefinitionversion-connector.html#cfn-greengrass-connectordefinitionversion-connector-id",
     "PrimitiveType": "String",
     "Required": true,
     "UpdateType": "Immutable"
    },
    "Parameters": {
     "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-connectordefinitionversion-connector.html#cfn-greengrass-connectordefinitionversion-connector-parameters",
     "PrimitiveType": "Json",
     "Required": false,
     "UpdateType": "Immutable"
    }
   }
  }
 },
 {
  "op": "add",
  "path": "/PropertyTypes/AWS::Greengrass::CoreDefinition.Core",
  "value": {
   "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-coredefinition-core.html",
   "Properties": {
    "CertificateArn": {
     "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-coredefinition-core.html#cfn-greengrass-coredefinition-core-certificatearn",
     "PrimitiveType": "String",
     "Required": true,
     "UpdateType": "Immutable"
    },
    "Id": {
     "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-coredefinition-core.html#cfn-greengrass-coredefinition-core-id",
     "PrimitiveType": "String",
     "Required": true,
     "UpdateType": "Immutable"
    },
    "SyncShadow": {
     "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-coredefinition-core.html#cfn-greengrass-coredefinition-core-syncshadow",
     "PrimitiveType": "Boolean",
     "Required": false,
     "UpdateType": "Immutable"
    },
    "ThingArn": {
     "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-coredefinition-core.html#cfn-greengrass-coredefinition-core-thingarn",
     "PrimitiveType": "String",
     "Required": true,
     "UpdateType": "Immutable"
    }
   }
  }
 },
 {
  "op": "add",
  "path": "/PropertyTypes/AWS::Greengrass::CoreDefinition.CoreDefinitionVersion",
  "value": {
   "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-coredefinition-coredefinitionversion.html",
   "Properties": {
    "Cores": {
     "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-coredefinition-coredefinitionversion.html#cfn-greengrass-coredefinition-coredefinitionversion-cores",
     "ItemType": "Core",
     "Required": true,
     "Type": "List",
     "UpdateType": "Immutable"
    }
   }
  }
 },
 {
  "op": "add",
  "path": "/PropertyTypes/AWS::Greengrass::CoreDefinitionVersion.Core",
  "value": {
   "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-coredefinitionversion-core.html",
   "Properties": {
    "CertificateArn": {
     "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-coredefinitionversion-core.html#cfn-greengrass-coredefinitionversion-core-certificatearn",
     "PrimitiveType": "String",
     "Required": true,
     "UpdateType": "Immutable"
    },
    "Id": {
     "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-coredefinitionversion-core.html#cfn-greengrass-coredefinitionversion-core-id",
     "PrimitiveType": "String",
     "Required": true,
     "UpdateType": "Immutable"
    },
    "SyncShadow": {
     "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-coredefinitionversion-core.html#cfn-greengrass-coredefinitionversion-core-syncshadow",
     "PrimitiveType": "Boolean",
     "Required": false,
     "UpdateType": "Immutable"
    },
    "ThingArn": {
     "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-coredefinitionversion-core.html#cfn-greengrass-coredefinitionversion-core-thingarn",
     "PrimitiveType": "String",
     "Required": true,
     "UpdateType": "Immutable"
    }
   }
  }
 },
 {
  "op": "add",
  "path": "/PropertyTypes/AWS::Greengrass::DeviceDefinition.Device",
  "value": {
   "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-devicedefinition-device.html",
   "Properties": {
    "CertificateArn": {
     "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-devicedefinition-device.html#cfn-greengrass-devicedefinition-device-certificatearn",
     "PrimitiveType": "String",
     "Required": true,
     "UpdateType": "Immutable"
    },
    "Id": {
     "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-devicedefinition-device.html#cfn-greengrass-devicedefinition-device-id",
     "PrimitiveType": "String",
     "Required": true,
     "UpdateType": "Immutable"
    },
    "SyncShadow": {
     "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-devicedefinition-device.html#cfn-greengrass-devicedefinition-device-syncshadow",
     "PrimitiveType": "Boolean",
     "Required": false,
     "UpdateType": "Immutable"
    },
    "ThingArn": {
     "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-devicedefinition-device.html#cfn-greengrass-devicedefinition-device-thingarn",
     "PrimitiveType": "String",
     "Required": true,
     "UpdateType": "Immutable"
    }
   }
  }
 },
 {
  "op": "add",
  "path": "/PropertyTypes/AWS::Greengrass::DeviceDefinition.DeviceDefinitionVersion",
  "value": {
   "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-devicedefinition-devicedefinitionversion.html",
   "Properties": {
    "Devices": {
     "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-devicedefinition-devicedefinitionversion.html#cfn-greengrass-devicedefinition-devicedefinitionversion-devices",
     "ItemType": "Device",
     "Required": true,
     "Type": "List",
     "UpdateType": "Immutable"
    }
   }
  }
 },
 {
  "op": "add",
  "path": "/PropertyTypes/AWS::Greengrass::DeviceDefinitionVersion.Device",
  "value": {
   "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-devicedefinitionversion-device.html",
   "Properties": {
    "CertificateArn": {
     "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-devicedefinitionversion-device.html#cfn-greengrass-devicedefinitionversion-device-certificatearn",
     "PrimitiveType": "String",
     "Required": true,
     "UpdateType": "Immutable"
    },
    "Id": {
     "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-devicedefinitionversion-device.html#cfn-greengrass-devicedefinitionversion-device-id",
     "PrimitiveType": "String",
     "Required": true,
     "UpdateType": "Immutable"
    },
    "SyncShadow": {
     "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-devicedefinitionversion-device.html#cfn-greengrass-devicedefinitionversion-device-syncshadow",
     "PrimitiveType": "Boolean",
     "Required": false,
     "UpdateType": "Immutable"
    },
    "ThingArn": {
     "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-devicedefinitionversion-device.html#cfn-greengrass-devicedefinitionversion-device-thingarn",
     "PrimitiveType": "String",
     "Required": true,
     "UpdateType": "Immutable"
    }
   }
  }
 },
 {
  "op": "add",
  "path": "/PropertyTypes/AWS::Greengrass::FunctionDefinition.DefaultConfig",
  "value": {
   "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-functiondefinition-defaultconfig.html",
   "Properties": {
    "Execution": {
     "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-functiondefinition-defaultconfig.html#cfn-greengrass-functiondefinition-defaultconfig-execution",
     "Required": true,
     "Type": "Execution",
     "UpdateType": "Mutable"
    }
   }
  }
 },
 {
  "op": "add",
  "path": "/PropertyTypes/AWS::Greengrass::FunctionDefinition.Environment",
  "value": {
   "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-functiondefinition-environment.html",
   "Properties": {
    "AccessSysfs": {
     "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-functiondefinition-environment.html#cfn-greengrass-functiondefinition-environment-accesssysfs",
     "PrimitiveType": "Boolean",
     "Required": false,
     "UpdateType": "Immutable"
    },
    "Execution": {
     "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-functiondefinition-environment.html#cfn-greengrass-functiondefinition-environment-execution",
     "Required": false,
     "Type": "Execution",
     "UpdateType": "Immutable"
    },
    "ResourceAccessPolicies": {
     "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-functiondefinition-environment.html#cfn-greengrass-functiondefinition-environment-resourceaccesspolicies",
     "ItemType": "ResourceAccessPolicy",
     "Required": false,
     "Type": "List",
     "UpdateType": "Immutable"
    },
    "Variables": {
     "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-functiondefinition-environment.html#cfn-greengrass-functiondefinition-environment-variables",
     "PrimitiveType": "Json",
     "Required": false,
     "UpdateType": "Immutable"
    }
   }
  }
 },
 {
  "op": "add",
  "path": "/PropertyTypes/AWS::Greengrass::FunctionDefinition.Execution",
  "value": {
   "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-functiondefinition-execution.html",
   "Properties": {
    "IsolationMode": {
     "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-functiondefinition-execution.html#cfn-greengrass-functiondefinition-execution-isolationmode",
     "PrimitiveType": "String",
     "Required": false,
     "UpdateType": "Immutable"
    },
    "RunAs": {
     "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-functiondefinition-execution.html#cfn-greengrass-functiondefinition-execution-runas",
     "Required": false,
     "Type": "RunAs",
     "UpdateType": "Immutable"
    }
   }
  }
 },
 {
  "op": "add",
  "path": "/PropertyTypes/AWS::Greengrass::FunctionDefinition.Function",
  "value": {
   "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-functiondefinition-function.html",
   "Properties": {
    "FunctionArn": {
     "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-functiondefinition-function.html#cfn-greengrass-functiondefinition-function-functionarn",
     "PrimitiveType": "String",
     "Required": true,
     "UpdateType": "Immutable"
    },
    "FunctionConfiguration": {
     "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-functiondefinition-function.html#cfn-greengrass-functiondefinition-function-functionconfiguration",
     "Required": true,
     "Type": "FunctionConfiguration",
     "UpdateType": "Immutable"
    },
    "Id": {
     "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-functiondefinition-function.html#cfn-greengrass-functiondefinition-function-id",
     "PrimitiveType": "String",
     "Required": true,
     "UpdateType": "Immutable"
    }
   }
  }
 },
 {
  "op": "add",
  "path": "/PropertyTypes/AWS::Greengrass::FunctionDefinition.FunctionConfiguration",
  "value": {
   "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-functiondefinition-functionconfiguration.html",
   "Properties": {
    "EncodingType": {
     "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-functiondefinition-functionconfiguration.html#cfn-greengrass-functiondefinition-functionconfiguration-encodingtype",
     "PrimitiveType": "String",
     "Required": false,
     "UpdateType": "Immutable"
    },
    "Environment": {
     "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-functiondefinition-functionconfiguration.html#cfn-greengrass-functiondefinition-functionconfiguration-environment",
     "Required": false,
     "Type": "Environment",
     "UpdateType": "Immutable"
    },
    "ExecArgs": {
     "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-functiondefinition-functionconfiguration.html#cfn-greengrass-functiondefinition-functionconfiguration-execargs",
     "PrimitiveType": "String",
     "Required": false,
     "UpdateType": "Immutable"
    },
    "Executable": {
     "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-functiondefinition-functionconfiguration.html#cfn-greengrass-functiondefinition-functionconfiguration-executable",
     "PrimitiveType": "String",
     "Required": false,
     "UpdateType": "Immutable"
    },
    "MemorySize": {
     "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-functiondefinition-functionconfiguration.html#cfn-greengrass-functiondefinition-functionconfiguration-memorysize",
     "PrimitiveType": "Integer",
     "Required": false,
     "UpdateType": "Immutable"
    },
    "Pinned": {
     "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-functiondefinition-functionconfiguration.html#cfn-greengrass-functiondefinition-functionconfiguration-pinned",
     "PrimitiveType": "Boolean",
     "Required": false,
     "UpdateType": "Mutable"
    },
    "Timeout": {
     "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-functiondefinition-functionconfiguration.html#cfn-greengrass-functiondefinition-functionconfiguration-timeout",
     "PrimitiveType": "Integer",
     "Required": false,
     "UpdateType": "Immutable"
    }
   }
  }
 },
 {
  "op": "add",
  "path": "/PropertyTypes/AWS::Greengrass::FunctionDefinition.FunctionDefinitionVersion",
  "value": {
   "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-functiondefinition-functiondefinitionversion.html",
   "Properties": {
    "DefaultConfig": {
     "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-functiondefinition-functiondefinitionversion.html#cfn-greengrass-functiondefinition-functiondefinitionversion-defaultconfig",
     "Required": false,
     "Type": "DefaultConfig",
     "UpdateType": "Immutable"
    },
    "Functions": {
     "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-functiondefinition-functiondefinitionversion.html#cfn-greengrass-functiondefinition-functiondefinitionversion-functions",
     "ItemType": "Function",
     "Required": true,
     "Type": "List",
     "UpdateType": "Immutable"
    }
   }
  }
 },
 {
  "op": "add",
  "path": "/PropertyTypes/AWS::Greengrass::FunctionDefinition.ResourceAccessPolicy",
  "value": {
   "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-functiondefinition-resourceaccesspolicy.html",
   "Properties": {
    "Permission": {
     "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-functiondefinition-resourceaccesspolicy.html#cfn-greengrass-functiondefinition-resourceaccesspolicy-permission",
     "PrimitiveType": "String",
     "Required": false,
     "UpdateType": "Immutable"
    },
    "ResourceId": {
     "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-functiondefinition-resourceaccesspolicy.html#cfn-greengrass-functiondefinition-resourceaccesspolicy-resourceid",
     "PrimitiveType": "String",
     "Required": true,
     "UpdateType": "Immutable"
    }
   }
  }
 },
 {
  "op": "add",
  "path": "/PropertyTypes/AWS::Greengrass::FunctionDefinition.RunAs",
  "value": {
   "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-functiondefinition-runas.html",
   "Properties": {
    "Gid": {
     "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-functiondefinition-runas.html#cfn-greengrass-functiondefinition-runas-gid",
     "PrimitiveType": "Integer",
     "Required": false,
     "UpdateType": "Immutable"
    },
    "Uid": {
     "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-functiondefinition-runas.html#cfn-greengrass-functiondefinition-runas-uid",
     "PrimitiveType": "Integer",
     "Required": false,
     "UpdateType": "Immutable"
    }
   }
  }
 },
 {
  "op": "add",
  "path": "/PropertyTypes/AWS::Greengrass::FunctionDefinitionVersion.DefaultConfig",
  "value": {
   "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-functiondefinitionversion-defaultconfig.html",
   "Properties": {
    "Execution": {
     "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-functiondefinitionversion-defaultconfig.html#cfn-greengrass-functiondefinitionversion-defaultconfig-execution",
     "Required": true,
     "Type": "Execution",
     "UpdateType": "Mutable"
    }
   }
  }
 },
 {
  "op": "add",
  "path": "/PropertyTypes/AWS::Greengrass::FunctionDefinitionVersion.Environment",
  "value": {
   "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-functiondefinitionversion-environment.html",
   "Properties": {
    "AccessSysfs": {
     "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-functiondefinitionversion-environment.html#cfn-greengrass-functiondefinitionversion-environment-accesssysfs",
     "PrimitiveType": "Boolean",
     "Required": false,
     "UpdateType": "Immutable"
    },
    "Execution": {
     "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-functiondefinitionversion-environment.html#cfn-greengrass-functiondefinitionversion-environment-execution",
     "Required": false,
     "Type": "Execution",
     "UpdateType": "Immutable"
    },
    "ResourceAccessPolicies": {
     "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-functiondefinitionversion-environment.html#cfn-greengrass-functiondefinitionversion-environment-resourceaccesspolicies",
     "ItemType": "ResourceAccessPolicy",
     "Required": false,
     "Type": "List",
     "UpdateType": "Immutable"
    },
    "Variables": {
     "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-functiondefinitionversion-environment.html#cfn-greengrass-functiondefinitionversion-environment-variables",
     "PrimitiveType": "Json",
     "Required": false,
     "UpdateType": "Immutable"
    }
   }
  }
 },
 {
  "op": "add",
  "path": "/PropertyTypes/AWS::Greengrass::FunctionDefinitionVersion.Execution",
  "value": {
   "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-functiondefinitionversion-execution.html",
   "Properties": {
    "IsolationMode": {
     "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-functiondefinitionversion-execution.html#cfn-greengrass-functiondefinitionversion-execution-isolationmode",
     "PrimitiveType": "String",
     "Required": false,
     "UpdateType": "Immutable"
    },
    "RunAs": {
     "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-functiondefinitionversion-execution.html#cfn-greengrass-functiondefinitionversion-execution-runas",
     "Required": false,
     "Type": "RunAs",
     "UpdateType": "Immutable"
    }
   }
  }
 },
 {
  "op": "add",
  "path": "/PropertyTypes/AWS::Greengrass::FunctionDefinitionVersion.Function",
  "value": {
   "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-functiondefinitionversion-function.html",
   "Properties": {
    "FunctionArn": {
     "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-functiondefinitionversion-function.html#cfn-greengrass-functiondefinitionversion-function-functionarn",
     "PrimitiveType": "String",
     "Required": true,
     "UpdateType": "Immutable"
    },
    "FunctionConfiguration": {
     "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-functiondefinitionversion-function.html#cfn-greengrass-functiondefinitionversion-function-functionconfiguration",
     "Required": true,
     "Type": "FunctionConfiguration",
     "UpdateType": "Immutable"
    },
    "Id": {
     "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-functiondefinitionversion-function.html#cfn-greengrass-functiondefinitionversion-function-id",
     "PrimitiveType": "String",
     "Required": true,
     "UpdateType": "Immutable"
    }
   }
  }
 },
 {
  "op": "add",
  "path": "/PropertyTypes/AWS::Greengrass::FunctionDefinitionVersion.FunctionConfiguration",
  "value": {
   "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-functiondefinitionversion-functionconfiguration.html",
   "Properties": {
    "EncodingType": {
     "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-functiondefinitionversion-functionconfiguration.html#cfn-greengrass-functiondefinitionversion-functionconfiguration-encodingtype",
     "PrimitiveType": "String",
     "Required": false,
     "UpdateType": "Immutable"
    },
    "Environment": {
     "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-functiondefinitionversion-functionconfiguration.html#cfn-greengrass-functiondefinitionversion-functionconfiguration-environment",
     "Required": false,
     "Type": "Environment",
     "UpdateType": "Immutable"
    },
    "ExecArgs": {
     "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-functiondefinitionversion-functionconfiguration.html#cfn-greengrass-functiondefinitionversion-functionconfiguration-execargs",
     "PrimitiveType": "String",
     "Required": false,
     "UpdateType": "Immutable"
    },
    "Executable": {
     "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-functiondefinitionversion-functionconfiguration.html#cfn-greengrass-functiondefinitionversion-functionconfiguration-executable",
     "PrimitiveType": "String",
     "Required": false,
     "UpdateType": "Immutable"
    },
    "MemorySize": {
     "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-functiondefinitionversion-functionconfiguration.html#cfn-greengrass-functiondefinitionversion-functionconfiguration-memorysize",
     "PrimitiveType": "Integer",
     "Required": false,
     "UpdateType": "Immutable"
    },
    "Pinned": {
     "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-functiondefinitionversion-functionconfiguration.html#cfn-greengrass-functiondefinitionversion-functionconfiguration-pinned",
     "PrimitiveType": "Boolean",
     "Required": false,
     "UpdateType": "Mutable"
    },
    "Timeout": {
     "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-functiondefinitionversion-functionconfiguration.html#cfn-greengrass-functiondefinitionversion-functionconfiguration-timeout",
     "PrimitiveType": "Integer",
     "Required": false,
     "UpdateType": "Immutable"
    }
   }
  }
 },
 {
  "op": "add",
  "path": "/PropertyTypes/AWS::Greengrass::FunctionDefinitionVersion.ResourceAccessPolicy",
  "value": {
   "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-functiondefinitionversion-resourceaccesspolicy.html",
   "Properties": {
    "Permission": {
     "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-functiondefinitionversion-resourceaccesspolicy.html#cfn-greengrass-functiondefinitionversion-resourceaccesspolicy-permission",
     "PrimitiveType": "String",
     "Required": false,
     "UpdateType": "Immutable"
    },
    "ResourceId": {
     "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-functiondefinitionversion-resourceaccesspolicy.html#cfn-greengrass-functiondefinitionversion-resourceaccesspolicy-resourceid",
     "PrimitiveType": "String",
     "Required": true,
     "UpdateType": "Immutable"
    }
   }
  }
 },
 {
  "op": "add",
  "path": "/PropertyTypes/AWS::Greengrass::FunctionDefinitionVersion.RunAs",
  "value": {
   "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-functiondefinitionversion-runas.html",
   "Properties": {
    "Gid": {
     "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-functiondefinitionversion-runas.html#cfn-greengrass-functiondefinitionversion-runas-gid",
     "PrimitiveType": "Integer",
     "Required": false,
     "UpdateType": "Immutable"
    },
    "Uid": {
     "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-functiondefinitionversion-runas.html#cfn-greengrass-functiondefinitionversion-runas-uid",
     "PrimitiveType": "Integer",
     "Required": false,
     "UpdateType": "Immutable"
    }
   }
  }
 },
 {
  "op": "add",
  "path": "/PropertyTypes/AWS::Greengrass::Group.GroupVersion",
  "value": {
   "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-group-groupversion.html",
   "Properties": {
    "ConnectorDefinitionVersionArn": {
     "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-group-groupversion.html#cfn-greengrass-group-groupversion-connectordefinitionversionarn",
     "PrimitiveType": "String",
     "Required": false,
     "UpdateType": "Immutable"
    },
    "CoreDefinitionVersionArn": {
     "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-group-groupversion.html#cfn-greengrass-group-groupversion-coredefinitionversionarn",
     "PrimitiveType": "String",
     "Required": false,
     "UpdateType": "Immutable"
    },
    "DeviceDefinitionVersionArn": {
     "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-group-groupversion.html#cfn-greengrass-group-groupversion-devicedefinitionversionarn",
     "PrimitiveType": "String",
     "Required": false,
     "UpdateType": "Immutable"
    },
    "FunctionDefinitionVersionArn": {
     "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-group-groupversion.html#cfn-greengrass-group-groupversion-functiondefinitionversionarn",
     "PrimitiveType": "String",
     "Required": false,
     "UpdateType": "Immutable"
    },
    "LoggerDefinitionVersionArn": {
     "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-group-groupversion.html#cfn-greengrass-group-groupversion-loggerdefinitionversionarn",
     "PrimitiveType": "String",
     "Required": false,
     "UpdateType": "Immutable"
    },
    "ResourceDefinitionVersionArn": {
     "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-group-groupversion.html#cfn-greengrass-group-groupversion-resourcedefinitionversionarn",
     "PrimitiveType": "String",
     "Required": false,
     "UpdateType": "Immutable"
    },
    "SubscriptionDefinitionVersionArn": {
     "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-group-groupversion.html#cfn-greengrass-group-groupversion-subscriptiondefinitionversionarn",
     "PrimitiveType": "String",
     "Required": false,
     "UpdateType": "Immutable"
    }
   }
  }
 },
 {
  "op": "add",
  "path": "/PropertyTypes/AWS::Greengrass::LoggerDefinition.Logger",
  "value": {
   "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-loggerdefinition-logger.html",
   "Properties": {
    "Component": {
     "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-loggerdefinition-logger.html#cfn-greengrass-loggerdefinition-logger-component",
     "PrimitiveType": "String",
     "Required": true,
     "UpdateType": "Immutable"
    },
    "Id": {
     "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-loggerdefinition-logger.html#cfn-greengrass-loggerdefinition-logger-id",
     "PrimitiveType": "String",
     "Required": true,
     "UpdateType": "Immutable"
    },
    "Level": {
     "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-loggerdefinition-logger.html#cfn-greengrass-loggerdefinition-logger-level",
     "PrimitiveType": "String",
     "Required": true,
     "UpdateType": "Immutable"
    },
    "Space": {
     "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-loggerdefinition-logger.html#cfn-greengrass-loggerdefinition-logger-space",
     "PrimitiveType": "Integer",
     "Required": false,
     "UpdateType": "Immutable"
    },
    "Type": {
     "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-loggerdefinition-logger.html#cfn-greengrass-loggerdefinition-logger-type",
     "PrimitiveType": "String",
     "Required": true,
     "UpdateType": "Immutable"
    }
   }
  }
 },
 {
  "op": "add",
  "path": "/PropertyTypes/AWS::Greengrass::LoggerDefinition.LoggerDefinitionVersion",
  "value": {
   "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-loggerdefinition-loggerdefinitionversion.html",
   "Properties": {
    "Loggers": {
     "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-loggerdefinition-loggerdefinitionversion.html#cfn-greengrass-loggerdefinition-loggerdefinitionversion-loggers",
     "ItemType": "Logger",
     "Required": true,
     "Type": "List",
     "UpdateType": "Immutable"
    }
   }
  }
 },
 {
  "op": "add",
  "path": "/PropertyTypes/AWS::Greengrass::LoggerDefinitionVersion.Logger",
  "value": {
   "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-loggerdefinitionversion-logger.html",
   "Properties": {
    "Component": {
     "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-loggerdefinitionversion-logger.html#cfn-greengrass-loggerdefinitionversion-logger-component",
     "PrimitiveType": "String",
     "Required": true,
     "UpdateType": "Immutable"
    },
    "Id": {
     "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-loggerdefinitionversion-logger.html#cfn-greengrass-loggerdefinitionversion-logger-id",
     "PrimitiveType": "String",
     "Required": true,
     "UpdateType": "Immutable"
    },
    "Level": {
     "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-loggerdefinitionversion-logger.html#cfn-greengrass-loggerdefinitionversion-logger-level",
     "PrimitiveType": "String",
     "Required": true,
     "UpdateType": "Immutable"
    },
    "Space": {
     "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-loggerdefinitionversion-logger.html#cfn-greengrass-loggerdefinitionversion-logger-space",
     "PrimitiveType": "Integer",
     "Required": false,
     "UpdateType": "Immutable"
    },
    "Type": {
     "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-loggerdefinitionversion-logger.html#cfn-greengrass-loggerdefinitionversion-logger-type",
     "PrimitiveType": "String",
     "Required": true,
     "UpdateType": "Immutable"
    }
   }
  }
 },
 {
  "op": "add",
  "path": "/PropertyTypes/AWS::Greengrass::ResourceDefinition.GroupOwnerSetting",
  "value": {
   "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinition-groupownersetting.html",
   "Properties": {
    "AutoAddGroupOwner": {
     "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinition-groupownersetting.html#cfn-greengrass-resourcedefinition-groupownersetting-autoaddgroupowner",
     "PrimitiveType": "Boolean",
     "Required": true,
     "UpdateType": "Immutable"
    },
    "GroupOwner": {
     "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinition-groupownersetting.html#cfn-greengrass-resourcedefinition-groupownersetting-groupowner",
     "PrimitiveType": "String",
     "Required": false,
     "UpdateType": "Immutable"
    }
   }
  }
 },
 {
  "op": "add",
  "path": "/PropertyTypes/AWS::Greengrass::ResourceDefinition.LocalDeviceResourceData",
  "value": {
   "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinition-localdeviceresourcedata.html",
   "Properties": {
    "GroupOwnerSetting": {
     "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinition-localdeviceresourcedata.html#cfn-greengrass-resourcedefinition-localdeviceresourcedata-groupownersetting",
     "Required": false,
     "Type": "GroupOwnerSetting",
     "UpdateType": "Immutable"
    },
    "SourcePath": {
     "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinition-localdeviceresourcedata.html#cfn-greengrass-resourcedefinition-localdeviceresourcedata-sourcepath",
     "PrimitiveType": "String",
     "Required": true,
     "UpdateType": "Immutable"
    }
   }
  }
 },
 {
  "op": "add",
  "path": "/PropertyTypes/AWS::Greengrass::ResourceDefinition.LocalVolumeResourceData",
  "value": {
   "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinition-localvolumeresourcedata.html",
   "Properties": {
    "DestinationPath": {
     "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinition-localvolumeresourcedata.html#cfn-greengrass-resourcedefinition-localvolumeresourcedata-destinationpath",
     "PrimitiveType": "String",
     "Required": true,
     "UpdateType": "Immutable"
    },
    "GroupOwnerSetting": {
     "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinition-localvolumeresourcedata.html#cfn-greengrass-resourcedefinition-localvolumeresourcedata-groupownersetting",
     "Required": false,
     "Type": "GroupOwnerSetting",
     "UpdateType": "Immutable"
    },
    "SourcePath": {
     "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinition-localvolumeresourcedata.html#cfn-greengrass-resourcedefinition-localvolumeresourcedata-sourcepath",
     "PrimitiveType": "String",
     "Required": true,
     "UpdateType": "Immutable"
    }
   }
  }
 },
 {
  "op": "add",
  "path": "/PropertyTypes/AWS::Greengrass::ResourceDefinition.ResourceDataContainer",
  "value": {
   "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinition-resourcedatacontainer.html",
   "Properties": {
    "LocalDeviceResourceData": {
     "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinition-resourcedatacontainer.html#cfn-greengrass-resourcedefinition-resourcedatacontainer-localdeviceresourcedata",
     "Required": false,
     "Type": "LocalDeviceResourceData",
     "UpdateType": "Immutable"
    },
    "LocalVolumeResourceData": {
     "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinition-resourcedatacontainer.html#cfn-greengrass-resourcedefinition-resourcedatacontainer-localvolumeresourcedata",
     "Required": false,
     "Type": "LocalVolumeResourceData",
     "UpdateType": "Immutable"
    },
    "S3MachineLearningModelResourceData": {
     "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinition-resourcedatacontainer.html#cfn-greengrass-resourcedefinition-resourcedatacontainer-s3machinelearningmodelresourcedata",
     "Required": false,
     "Type": "S3MachineLearningModelResourceData",
     "UpdateType": "Immutable"
    },
    "SageMakerMachineLearningModelResourceData": {
     "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinition-resourcedatacontainer.html#cfn-greengrass-resourcedefinition-resourcedatacontainer-sagemakermachinelearningmodelresourcedata",
     "Required": false,
     "Type": "SageMakerMachineLearningModelResourceData",
     "UpdateType": "Immutable"
    },
    "SecretsManagerSecretResourceData": {
     "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinition-resourcedatacontainer.html#cfn-greengrass-resourcedefinition-resourcedatacontainer-secretsmanagersecretresourcedata",
     "Required": false,
     "Type": "SecretsManagerSecretResourceData",
     "UpdateType": "Immutable"
    }
   }
  }
 },
 {
  "op": "add",
  "path": "/PropertyTypes/AWS::Greengrass::ResourceDefinition.ResourceDefinitionVersion",
  "value": {
   "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinition-resourcedefinitionversion.html",
   "Properties": {
    "Resources": {
     "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinition-resourcedefinitionversion.html#cfn-greengrass-resourcedefinition-resourcedefinitionversion-resources",
     "ItemType": "ResourceInstance",
     "Required": true,
     "Type": "List",
     "UpdateType": "Immutable"
    }
   }
  }
 },
 {
  "op": "add",
  "path": "/PropertyTypes/AWS::Greengrass::ResourceDefinition.ResourceDownloadOwnerSetting",
  "value": {
   "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinition-resourcedownloadownersetting.html",
   "Properties": {
    "GroupOwner": {
     "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinition-resourcedownloadownersetting.html#cfn-greengrass-resourcedefinition-resourcedownloadownersetting-groupowner",
     "PrimitiveType": "String",
     "Required": true,
     "UpdateType": "Immutable"
    },
    "GroupPermission": {
     "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinition-resourcedownloadownersetting.html#cfn-greengrass-resourcedefinition-resourcedownloadownersetting-grouppermission",
     "PrimitiveType": "String",
     "Required": true,
     "UpdateType": "Immutable"
    }
   }
  }
 },
 {
  "op": "add",
  "path": "/PropertyTypes/AWS::Greengrass::ResourceDefinition.ResourceInstance",
  "value": {
   "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinition-resourceinstance.html",
   "Properties": {
    "Id": {
     "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinition-resourceinstance.html#cfn-greengrass-resourcedefinition-resourceinstance-id",
     "PrimitiveType": "String",
     "Required": true,
     "UpdateType": "Immutable"
    },
    "Name": {
     "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinition-resourceinstance.html#cfn-greengrass-resourcedefinition-resourceinstance-name",
     "PrimitiveType": "String",
     "Required": true,
     "UpdateType": "Immutable"
    },
    "ResourceDataContainer": {
     "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinition-resourceinstance.html#cfn-greengrass-resourcedefinition-resourceinstance-resourcedatacontainer",
     "Required": true,
     "Type": "ResourceDataContainer",
     "UpdateType": "Immutable"
    }
   }
  }
 },
 {
  "op": "add",
  "path": "/PropertyTypes/AWS::Greengrass::ResourceDefinition.S3MachineLearningModelResourceData",
  "value": {
   "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinition-s3machinelearningmodelresourcedata.html",
   "Properties": {
    "DestinationPath": {
     "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinition-s3machinelearningmodelresourcedata.html#cfn-greengrass-resourcedefinition-s3machinelearningmodelresourcedata-destinationpath",
     "PrimitiveType": "String",
     "Required": true,
     "UpdateType": "Immutable"
    },
    "OwnerSetting": {
     "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinition-s3machinelearningmodelresourcedata.html#cfn-greengrass-resourcedefinition-s3machinelearningmodelresourcedata-ownersetting",
     "Required": false,
     "Type": "ResourceDownloadOwnerSetting",
     "UpdateType": "Immutable"
    },
    "S3Uri": {
     "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinition-s3machinelearningmodelresourcedata.html#cfn-greengrass-resourcedefinition-s3machinelearningmodelresourcedata-s3uri",
     "PrimitiveType": "String",
     "Required": true,
     "UpdateType": "Immutable"
    }
   }
  }
 },
 {
  "op": "add",
  "path": "/PropertyTypes/AWS::Greengrass::ResourceDefinition.SageMakerMachineLearningModelResourceData",
  "value": {
   "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinition-sagemakermachinelearningmodelresourcedata.html",
   "Properties": {
    "DestinationPath": {
     "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinition-sagemakermachinelearningmodelresourcedata.html#cfn-greengrass-resourcedefinition-sagemakermachinelearningmodelresourcedata-destinationpath",
     "PrimitiveType": "String",
     "Required": true,
     "UpdateType": "Immutable"
    },
    "OwnerSetting": {
     "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinition-sagemakermachinelearningmodelresourcedata.html#cfn-greengrass-resourcedefinition-sagemakermachinelearningmodelresourcedata-ownersetting",
     "Required": false,
     "Type": "ResourceDownloadOwnerSetting",
     "UpdateType": "Immutable"
    },
    "SageMakerJobArn": {
     "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinition-sagemakermachinelearningmodelresourcedata.html#cfn-greengrass-resourcedefinition-sagemakermachinelearningmodelresourcedata-sagemakerjobarn",
     "PrimitiveType": "String",
     "Required": true,
     "UpdateType": "Immutable"
    }
   }
  }
 },
 {
  "op": "add",
  "path": "/PropertyTypes/AWS::Greengrass::ResourceDefinition.SecretsManagerSecretResourceData",
  "value": {
   "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinition-secretsmanagersecretresourcedata.html",
   "Properties": {
    "ARN": {
     "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinition-secretsmanagersecretresourcedata.html#cfn-greengrass-resourcedefinition-secretsmanagersecretresourcedata-arn",
     "PrimitiveType": "String",
     "Required": true,
     "UpdateType": "Immutable"
    },
    "AdditionalStagingLabelsToDownload": {
     "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinition-secretsmanagersecretresourcedata.html#cfn-greengrass-resourcedefinition-secretsmanagersecretresourcedata-additionalstaginglabelstodownload",
     "PrimitiveItemType": "String",
     "Required": false,
     "Type": "List",
     "UpdateType": "Immutable"
    }
   }
  }
 },
 {
  "op": "add",
  "path": "/PropertyTypes/AWS::Greengrass::ResourceDefinitionVersion.GroupOwnerSetting",
  "value": {
   "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinitionversion-groupownersetting.html",
   "Properties": {
    "AutoAddGroupOwner": {
     "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinitionversion-groupownersetting.html#cfn-greengrass-resourcedefinitionversion-groupownersetting-autoaddgroupowner",
     "PrimitiveType": "Boolean",
     "Required": true,
     "UpdateType": "Immutable"
    },
    "GroupOwner": {
     "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinitionversion-groupownersetting.html#cfn-greengrass-resourcedefinitionversion-groupownersetting-groupowner",
     "PrimitiveType": "String",
     "Required": false,
     "UpdateType": "Immutable"
    }
   }
  }
 },
 {
  "op": "add",
  "path": "/PropertyTypes/AWS::Greengrass::ResourceDefinitionVersion.LocalDeviceResourceData",
  "value": {
   "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinitionversion-localdeviceresourcedata.html",
   "Properties": {
    "GroupOwnerSetting": {
     "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinitionversion-localdeviceresourcedata.html#cfn-greengrass-resourcedefinitionversion-localdeviceresourcedata-groupownersetting",
     "Required": false,
     "Type": "GroupOwnerSetting",
     "UpdateType": "Immutable"
    },
    "SourcePath": {
     "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinitionversion-localdeviceresourcedata.html#cfn-greengrass-resourcedefinitionversion-localdeviceresourcedata-sourcepath",
     "PrimitiveType": "String",
     "Required": true,
     "UpdateType": "Immutable"
    }
   }
  }
 },
 {
  "op": "add",
  "path": "/PropertyTypes/AWS::Greengrass::ResourceDefinitionVersion.LocalVolumeResourceData",
  "value": {
   "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinitionversion-localvolumeresourcedata.html",
   "Properties": {
    "DestinationPath": {
     "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinitionversion-localvolumeresourcedata.html#cfn-greengrass-resourcedefinitionversion-localvolumeresourcedata-destinationpath",
     "PrimitiveType": "String",
     "Required": true,
     "UpdateType": "Immutable"
    },
    "GroupOwnerSetting": {
     "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinitionversion-localvolumeresourcedata.html#cfn-greengrass-resourcedefinitionversion-localvolumeresourcedata-groupownersetting",
     "Required": false,
     "Type": "GroupOwnerSetting",
     "UpdateType": "Immutable"
    },
    "SourcePath": {
     "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinitionversion-localvolumeresourcedata.html#cfn-greengrass-resourcedefinitionversion-localvolumeresourcedata-sourcepath",
     "PrimitiveType": "String",
     "Required": true,
     "UpdateType": "Immutable"
    }
   }
  }
 },
 {
  "op": "add",
  "path": "/PropertyTypes/AWS::Greengrass::ResourceDefinitionVersion.ResourceDataContainer",
  "value": {
   "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinitionversion-resourcedatacontainer.html",
   "Properties": {
    "LocalDeviceResourceData": {
     "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinitionversion-resourcedatacontainer.html#cfn-greengrass-resourcedefinitionversion-resourcedatacontainer-localdeviceresourcedata",
     "Required": false,
     "Type": "LocalDeviceResourceData",
     "UpdateType": "Immutable"
    },
    "LocalVolumeResourceData": {
     "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinitionversion-resourcedatacontainer.html#cfn-greengrass-resourcedefinitionversion-resourcedatacontainer-localvolumeresourcedata",
     "Required": false,
     "Type": "LocalVolumeResourceData",
     "UpdateType": "Immutable"
    },
    "S3MachineLearningModelResourceData": {
     "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinitionversion-resourcedatacontainer.html#cfn-greengrass-resourcedefinitionversion-resourcedatacontainer-s3machinelearningmodelresourcedata",
     "Required": false,
     "Type": "S3MachineLearningModelResourceData",
     "UpdateType": "Immutable"
    },
    "SageMakerMachineLearningModelResourceData": {
     "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinitionversion-resourcedatacontainer.html#cfn-greengrass-resourcedefinitionversion-resourcedatacontainer-sagemakermachinelearningmodelresourcedata",
     "Required": false,
     "Type": "SageMakerMachineLearningModelResourceData",
     "UpdateType": "Immutable"
    },
    "SecretsManagerSecretResourceData": {
     "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinitionversion-resourcedatacontainer.html#cfn-greengrass-resourcedefinitionversion-resourcedatacontainer-secretsmanagersecretresourcedata",
     "Required": false,
     "Type": "SecretsManagerSecretResourceData",
     "UpdateType": "Immutable"
    }
   }
  }
 },
 {
  "op": "add",
  "path": "/PropertyTypes/AWS::Greengrass::ResourceDefinitionVersion.ResourceDownloadOwnerSetting",
  "value": {
   "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinitionversion-resourcedownloadownersetting.html",
   "Properties": {
    "GroupOwner": {
     "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinitionversion-resourcedownloadownersetting.html#cfn-greengrass-resourcedefinitionversion-resourcedownloadownersetting-groupowner",
     "PrimitiveType": "String",
     "Required": true,
     "UpdateType": "Immutable"
    },
    "GroupPermission": {
     "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinitionversion-resourcedownloadownersetting.html#cfn-greengrass-resourcedefinitionversion-resourcedownloadownersetting-grouppermission",
     "PrimitiveType": "String",
     "Required": true,
     "UpdateType": "Immutable"
    }
   }
  }
 },
 {
  "op": "add",
  "path": "/PropertyTypes/AWS::Greengrass::ResourceDefinitionVersion.ResourceInstance",
  "value": {
   "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinitionversion-resourceinstance.html",
   "Properties": {
    "Id": {
     "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinitionversion-resourceinstance.html#cfn-greengrass-resourcedefinitionversion-resourceinstance-id",
     "PrimitiveType": "String",
     "Required": true,
     "UpdateType": "Immutable"
    },
    "Name": {
     "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinitionversion-resourceinstance.html#cfn-greengrass-resourcedefinitionversion-resourceinstance-name",
     "PrimitiveType": "String",
     "Required": true,
     "UpdateType": "Immutable"
    },
    "ResourceDataContainer": {
     "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinitionversion-resourceinstance.html#cfn-greengrass-resourcedefinitionversion-resourceinstance-resourcedatacontainer",
     "Required": true,
     "Type": "ResourceDataContainer",
     "UpdateType": "Immutable"
    }
   }
  }
 },
 {
  "op": "add",
  "path": "/PropertyTypes/AWS::Greengrass::ResourceDefinitionVersion.S3MachineLearningModelResourceData",
  "value": {
   "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinitionversion-s3machinelearningmodelresourcedata.html",
   "Properties": {
    "DestinationPath": {
     "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinitionversion-s3machinelearningmodelresourcedata.html#cfn-greengrass-resourcedefinitionversion-s3machinelearningmodelresourcedata-destinationpath",
     "PrimitiveType": "String",
     "Required": true,
     "UpdateType": "Immutable"
    },
    "OwnerSetting": {
     "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinitionversion-s3machinelearningmodelresourcedata.html#cfn-greengrass-resourcedefinitionversion-s3machinelearningmodelresourcedata-ownersetting",
     "Required": false,
     "Type": "ResourceDownloadOwnerSetting",
     "UpdateType": "Immutable"
    },
    "S3Uri": {
     "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinitionversion-s3machinelearningmodelresourcedata.html#cfn-greengrass-resourcedefinitionversion-s3machinelearningmodelresourcedata-s3uri",
     "PrimitiveType": "String",
     "Required": true,
     "UpdateType": "Immutable"
    }
   }
  }
 },
 {
  "op": "add",
  "path": "/PropertyTypes/AWS::Greengrass::ResourceDefinitionVersion.SageMakerMachineLearningModelResourceData",
  "value": {
   "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinitionversion-sagemakermachinelearningmodelresourcedata.html",
   "Properties": {
    "DestinationPath": {
     "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinitionversion-sagemakermachinelearningmodelresourcedata.html#cfn-greengrass-resourcedefinitionversion-sagemakermachinelearningmodelresourcedata-destinationpath",
     "PrimitiveType": "String",
     "Required": true,
     "UpdateType": "Immutable"
    },
    "OwnerSetting": {
     "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinitionversion-sagemakermachinelearningmodelresourcedata.html#cfn-greengrass-resourcedefinitionversion-sagemakermachinelearningmodelresourcedata-ownersetting",
     "Required": false,
     "Type": "ResourceDownloadOwnerSetting",
     "UpdateType": "Immutable"
    },
    "SageMakerJobArn": {
     "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinitionversion-sagemakermachinelearningmodelresourcedata.html#cfn-greengrass-resourcedefinitionversion-sagemakermachinelearningmodelresourcedata-sagemakerjobarn",
     "PrimitiveType": "String",
     "Required": true,
     "UpdateType": "Immutable"
    }
   }
  }
 },
 {
  "op": "add",
  "path": "/PropertyTypes/AWS::Greengrass::ResourceDefinitionVersion.SecretsManagerSecretResourceData",
  "value": {
   "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinitionversion-secretsmanagersecretresourcedata.html",
   "Properties": {
    "ARN": {
     "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinitionversion-secretsmanagersecretresourcedata.html#cfn-greengrass-resourcedefinitionversion-secretsmanagersecretresourcedata-arn",
     "PrimitiveType": "String",
     "Required": true,
     "UpdateType": "Immutable"
    },
    "AdditionalStagingLabelsToDownload": {
     "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinitionversion-secretsmanagersecretresourcedata.html#cfn-greengrass-resourcedefinitionversion-secretsmanagersecretresourcedata-additionalstaginglabelstodownload",
     "PrimitiveItemType": "String",
     "Required": false,
     "Type": "List",
     "UpdateType": "Immutable"
    }
   }
  }
 },
 {
  "op": "add",
  "path": "/PropertyTypes/AWS::Greengrass::SubscriptionDefinition.Subscription",
  "value": {
   "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-subscriptiondefinition-subscription.html",
   "Properties": {
    "Id": {
     "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-subscriptiondefinition-subscription.html#cfn-greengrass-subscriptiondefinition-subscription-id",
     "PrimitiveType": "String",
     "Required": true,
     "UpdateType": "Immutable"
    },
    "Source": {
     "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-subscriptiondefinition-subscription.html#cfn-greengrass-subscriptiondefinition-subscription-source",
     "PrimitiveType": "String",
     "Required": true,
     "UpdateType": "Immutable"
    },
    "Subject": {
     "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-subscriptiondefinition-subscription.html#cfn-greengrass-subscriptiondefinition-subscription-subject",
     "PrimitiveType": "String",
     "Required": true,
     "UpdateType": "Immutable"
    },
    "Target": {
     "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-subscriptiondefinition-subscription.html#cfn-greengrass-subscriptiondefinition-subscription-target",
     "PrimitiveType": "String",
     "Required": true,
     "UpdateType": "Immutable"
    }
   }
  }
 },
 {
  "op": "add",
  "path": "/PropertyTypes/AWS::Greengrass::SubscriptionDefinition.SubscriptionDefinitionVersion",
  "value": {
   "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-subscriptiondefinition-subscriptiondefinitionversion.html",
   "Properties": {
    "Subscriptions": {
     "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-subscriptiondefinition-subscriptiondefinitionversion.html#cfn-greengrass-subscriptiondefinition-subscriptiondefinitionversion-subscriptions",
     "ItemType": "Subscription",
     "Required": true,
     "Type": "List",
     "UpdateType": "Immutable"
    }
   }
  }
 },
 {
  "op": "add",
  "path": "/PropertyTypes/AWS::Greengrass::SubscriptionDefinitionVersion.Subscription",
  "value": {
   "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-subscriptiondefinitionversion-subscription.html",
   "Properties": {
    "Id": {
     "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-subscriptiondefinitionversion-subscription.html#cfn-greengrass-subscriptiondefinitionversion-subscription-id",
     "PrimitiveType": "String",
     "Required": true,
     "UpdateType": "Immutable"
    },
    "Source": {
     "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-subscriptiondefinitionversion-subscription.html#cfn-greengrass-subscriptiondefinitionversion-subscription-source",
     "PrimitiveType": "String",
     "Required": true,
     "UpdateType": "Immutable"
    },
    "Subject": {
     "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-subscriptiondefinitionversion-subscription.html#cfn-greengrass-subscriptiondefinitionversion-subscription-subject",
     "PrimitiveType": "String",
     "Required": true,
     "UpdateType": "Immutable"
    },
    "Target": {
     "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-subscriptiondefinitionversion-subscription.html#cfn-greengrass-subscriptiondefinitionversion-subscription-target",
     "PrimitiveType": "String",
     "Required": true,
     "UpdateType": "Immutable"
    }
   }
  }
 }
]